News.YC Greasemonkey script to hide iPad articles - mike-cardwell https://secure.grepular.com/projects/yc_ignoreipad.user.js A greasemonkey script to hide all of the annoying iPad articles when viewing news.ycombinator.com. You can modify the regular expression in the script to hide other articles as well if you know regex. <comment><AUTHOR> There is a Greasemonkey script called 'HN Toolkit' which performs a lot of useful functions, one of which is blocking articles based on regex matches. So all you have to do would be to enter 'iPad' into the toolkit options and it'll hide all links with the word in it.

Apart from this it also adds a searchYC box and has support for split view.

Link: <http://userscripts.org/scripts/show/25039>

<comment><USER2> I managed to make it work in Chrome (well, Chromium) by splicing in some support functions from another script, and tweaking a line at the bottom.

<http://gist.github.com/355697>

To install, click the 'raw' link at the top right of the source.

</comment></comment><comment><USER3> really, guys? In less than a week it'll be back to normal.

I don't understand why people are all "not in MY HACKER NEWS" - this is what people are talking about. In 3 days we'll be back to Clojure and Haskell and "rate my startup" and "I built <clone of popular site> using <new technology> in <some trivial number of hours>."

<comment><USER4> Well, the great thing about this is that it is a welcome change from the "HN is being overrun, please stop posting/upvoting articles about X or from site Y" complaint. This makes a point by distributing a tool, that seems very hacker-ish.

I'm upvoting it for the spirit even though I probably will remove it after seeing whether it works in Chrome.

<comment> mike-cardwell It does. Works under GreaseKit on Safari too.

</comment></comment></comment><comment><USER5> A magical and revolutionary script at an unbelievable price.

<comment><USER6> This is the future of computing.

<comment><USER7> I sympathize with the substantive criticism, but let's not pull a Reddit.

</comment></comment></comment><comment><USER8> Very cool. I changed it so that it ONLY shows iPad articles.

<comment><USER9> Was there any difference from the default hackernews view?

<comment><USER10> It's only one third at the moment, so no big deal :)

</comment></comment></comment><comment><USER11> The irony is this script would hide this post.

<comment><USER12> Which would be good since it would already be installed.

</comment></comment><comment><USER13> I guess I should thank you before I install the script.

</comment><comment> mike-cardwell It's pretty easy to modify it to hide other types of articles too if you understand regex. At the moment it hides all articles with a title matching this:

/\bi-?pad\b/i

<comment><USER14> And if there's anyone here who doesn't know regex - go and learn regex. It will take 30 minutes max and the investment in time and brain space will pay off _countless_ times.

<comment><USER15> Yeah, and then _please_ take a theory of computation course before attempting to parse something like HTML using regexes. :)

<comment><USER16> It's only applying the regex against the articlee title, no? One would hope, at least :)

</comment></comment></comment></comment><comment><USER17> Thank you for providing this script, for all those of us too lazy to do it ourselves. :)

Now if we can have one that filters the functional programming posts, and the "I'm stupid enough to think I achieved something by cloning this trivial, yet major web service with this terribly unscalable new web tool" posts.

I'm all for the random tech news and bitching about DRM and software patents though. :)

</comment><comment><USER18> I debated not even reading HN for the next week, because I actually had a dream about an iPad last night. Apple, that's just crossing the line :)

</comment><comment><USER19> imagine being able to walk down the street and not see anything you don't like

i think i'd be bumping into a few things :-)

</comment><comment><USER20> Unfortunately it doesn't automatically fetch news items from the following pages. Anyway, it's an improvement.

</comment><comment><USER21> Nice to know that Greasemonkey scripts like this work as a Google Chrome Extension.

</comment><comment><USER22> Does the script hide this item from the front page as well? Hmmmm....

</comment><comment><USER23> Can you write a more general version that excludes ALL relevant and topical submissions?

</comment><comment><USER24> THANK YOU!

</comment><comment><USER25> anyone have one for google reader??

</comment><comment><USER26> I need a script to hide lame news like this one.

<comment><USER27> <http://news.ycombinator.com/item?id=1240110>

</comment></comment><comment><USER28> Can I have this script running for the hole internet please?</comment>


Simple Binary Encoding (SBE) – High Performance Message Codec - <AUTHOR> https://github.com/real-logic/simple-binary-encoding <comment><USER2> For the Java heads out there, this was done by Martin Thompson and co. The same crew that did the Disruptor queue that's used in everything now.</comment>


The Unix Philosophy - <AUTHOR> http://www.catb.org/esr/writings/taoup/html/ch01s06.html

<comment><USER2> This is a wonderful article. Nothing fancy, clever or eye popping but simple yet powerful ideas to build long lasting software.</comment>


python: hmac._secret_backdoor_key - <AUTHOR> https://hg.python.org/cpython/file/2.7/Lib/hmac.py#l21 <comment><AUTHOR> For the history of this, see: [https://code.activestate.com/lists/python- checkins/32587/](https://code.activestate.com/lists/python-checkins/32587/)

This is actually just a unique object used for an object identity check, so that instances of the HMAC class can copy themselves and tell the copy to not bother initializing its internal state before that state gets overwritten. It's not in any way a "key" in the cryptographic sense.

Current events, on the other hand, make it a rather poor variable name in hindsight.</comment>


A Neuroscientist Explores the "Sanskrit Effect" - <AUTHOR> https://blogs.scientificamerican.com/observations/a-neuroscientist-explores-the-sanskrit-effect/ <comment><USER2> I have to say, as someone who studied Sanskrit grammar in the paninian system, and also mathematics in University how mathematical the Paninian grammar is, incredibly algebraic. Prefixes and suffixes combine to change and modify words, words can be joined together to create new words. Though I'm sure these features are found in other languages.

Another interesting note is that Vedic mantras are sometimes traditionally learnt and recited in what is known as a Ghana patha. If i were to number the words in a sentence, "The cow jumped over the moon" as 1 2 3 4 5 6 and then if I were to recite the sentence now permuting the words as 1 2 2 1 1 2 3 3 2 1 1 2 3,, 2 3 3 2 2 3 4 4 3 2 2 3 4.... The complexity increases. This is because words can be joined together in Sanskrit. Furthermore each letter in Vedic Sanskrit has three ways of pronouncing it (similar to the Chinese four accents) and these can change as you permute and apply the sandhi rules as well.

I haven't seen such complexity in other languages (though it's possible it may exist) but such complexity is why it wouldn't surprise me that the effect could possibly be specific to Sanskrit.

<comment> satish-setty > Vedic Sanskrit has three ways of pronouncing it (similar to the Chinese four > accents)

Just a nitpick: Vedic Sanskrit has _pitch accent_ , not tone. Chinese is tonal. And I'm a huge fan of ghana patha as well!

<comment><USER3> I was really sad the article didn't have a video of the hymns it spoke of, I'm similarly really interested now w in seeing an example of pitch accent you speak of in action, could you please link a video which you feel shows it well in play? Thanks!

<comment><USER2> Sure, here is an example of the rudram chanted in ghanam mode, there is a brief example given in the beginning similar to what i explained in my above comment. This is from the yajur Veda I believe, some scholars date these chants close to 3000 years old. [https://youtu.be/5VP- NTPEjGg](https://youtu.be/5VP-NTPEjGg)

<comment><USER4> Another video, 103 year old Ambattur Ganapadigal chanting ghanam:

[https://www.youtube.com/watch?v=seCJU0zwHpY](https://www.youtube.com/watch?v=seCJU0zwHpY)

<comment><USER2> A ghanam of the famous "Tamaso ma jyotir gamaya" of the ancient brihadaranyaka.

</comment></comment></comment></comment></comment></comment><comment><USER5> Given that people who memorize sanskrit hymns typically come from a single caste (with limited intermarriage between castes), the control should just include the members of that caste (but who don't memorize hymns) - to account for genetic effects. And as another commenter pointed out, this doesn't prove anything about Sanksrit. To prove something like that, the authors should have compared brain sizes with people who memorize other non-sanskrit texts.

<comment><USER6> A substantial group that memorizes a foreign-language (to many) text are Muslim huffaz, who commit the entire Koran to memory. They'd make a good comparison group, given their large numbers, ethnic heterogeneity and worldwide distribution.

<comment><USER7> Or The Knowledge, where London cab drivers have to memorise the whole of London's streets

<comment><USER8> It is well attested that licensed London taxicab drivers (those with "the knowledge") do in fact end up with different brain structure.

I haven't seen any studies of what they might give up in the process, though it does involve a lot of sitting.

Example: [https://www.scientificamerican.com/article/london-taxi- memor...](https://www.scientificamerican.com/article/london-taxi-memory/)

<comment><USER9> Wow. I didn't know about that.

Kind of casts the whole dispute with Uber thing into a whole different light, doesn't it?

<comment><USER8> Does it? A machine can indeed do a better job (in the sense of requiring negligible training) of knowing all the streets and democratized "the knowledge" which previously was the purview of a small guild.

I am sorry for their sunk cost, but really minicabs+gps and now uber/Lyft et al are as good, or would be if taxis didn't have a pick up monopoly.

<comment><USER10> From previous articles on "the knowledge" I believe that no, a machine cannot really do "better" or not yet, at least.

IIRC at the exam you could get questions like "The passenger tells you that his cousin mentioned a building with a bas-relief of Holy Mary holding Jesus, it was right around the angle from his hotel, but he does not remember the hotel's name".

You are supposed to know the place and the best way to get there, based on just this (also, a good number of "knowledgeable" taxi drivers go for an official London Tour Guide exam soon after, with relatively little effort, considering they have already memorized thousands of places, monuments and architectural details).

<comment><USER11> Untrained driver + Google Maps sits on a different point on the cost / benefit curve than Driver-with-the-Knowledge.

Different customers might prefer different total packages on different occasions.

I for one rarely need the more expensive Driver-with-the-Knowledge option, especially when I can ask Google many of the same questions.

<comment><USER10> I may concede that it can perform "adequately at a lower price point" (I use Google myself when I am not in my hometown), but the parent wasn't talking about price.

<comment><USER11> I went off the phrase "A machine can indeed do a better job [..]" and was seeing the price as a big part of that package.

Looks we agree about everything that we actually made explicit. The disagreement was about the implicit meaning of whether price was included in the meaning of 'better job'.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> The article is about "India's Vedic Sanskrit pandits [who] train for years". For anyone who wants a glimpse of what this training (or the result of the training) looks like, there are some great videos on YouTube:

\- [https://www.youtube.com/watch?v=ALEHkgOx8EE](https://www.youtube.com/watch?v=ALEHkgOx8EE) "Embodying the Vedas - A day in the Śrī Kṛṣṇayajurveda Pāṭhaśālā" (The article mentions the closely related _Shukla Yajurveda_.) (Examples of the training are from 00:00 to 00:55, from 04:59 to 05:35, from 08:00 to 09:08, from 11:15 to 13:40.)

\- [https://www.youtube.com/watch?v=ruuPbvViOe4](https://www.youtube.com/watch?v=ruuPbvViOe4) "Glimpses of the current status of Vedic tradition in Kerala" (Examples of the training are from 00:00 to 03:44, from 08:45 to 12:57, from 13:15 to 14:46)

\- [https://www.youtube.com/watch?v=CZbpPAjukHI](https://www.youtube.com/watch?v=CZbpPAjukHI) "Champakaapura Veda Paathashale" (Examples are from 06:35 to 07:43, etc.)

(These three from this playlist: [https://www.youtube.com/playlist?list=PL63uIhJxWbgjpQhSwfAmS...](https://www.youtube.com/playlist?list=PL63uIhJxWbgjpQhSwfAmSt2p_TqqWLGha) ; click around for more.)

If you look at the age at which students start, theories like "people with strong verbal memories will choose to memorize mantras" (proposed in another comment) are easy to discard. Of course, other statistical effects are still possible, such as selection bias (people who do not have or develop the needed memory may abandon training, etc).

</comment><comment><USER13> I just recently learned that Sanskrit was the first language to have its grammar formally specified. Pāṇini in the 4th century BCE wrote down the complete one. I couldn't find a good translation of it online. I suppose translating a grammar written in the language itself is tough.

I was curious because I want to know how much of BNF grammar functionality is represented in it. Perhaps BNF is just a rediscovering/reformatting of the Sanskrit grammar?

<comment><USER14> Panini's grammar is closest to an instance of a Post canonical system. It is basically a set of general rewriting rules, with features going beyond BNF in power.

This is for pretty much the same reason that the grammatical formalisms modern linguists use also go beyond BNF. Linguists are interested in issues of grammaticality that actually do need context (such as subject-verb agreement) and so obviously context-free grammars can't do the whole job!

(For a programming example, you can see type correctness as a case of how well-formedness of programs depends on context -- whether a variable can be used in an expression depends on its type.)

<comment><USER15> Panini covered both the grammar in the regular sense as well as the phonology of the language. "Optimality theory" attempts to model phonology as a collection of violable constraints operating with a least violation principle. It is supposed to be more generally applicable to what we normally know as grammar (dealings at the words/phrases level), but has seen most success with phonology.

</comment></comment></comment><comment><USER16> As someone who read some of these scriptures mentioned here , they are always cited from memory. When we were taught , it is usually the teacher reciting once and the students reciting again with 2 repeats. Usually it starts with one word at a time , then by joining 2 together , then entire sentences and then entire chapters.An example here ([https://www.youtube.com/watch?v=sCO1FIQzbQk](https://www.youtube.com/watch?v=sCO1FIQzbQk)) It is quite incidental that , many of these stick in memory quite a lot. When i chant these after a few years , i am quite surprised that i can recall this without much effort. P.S. Not glorifying, just stating the facts

</comment><comment><USER17> Hmm, interesting observation, but the causal link seems a bit tenuous.

Is it possible that only people with larger hippcampi and other cortical regions are good at memorizing large texts? (that is, the causal link is inverted)

Is it possible that people who learn or do something focussedly over a long stretch of time (practice music 4 hours a day) show larger development over those same areas than the average distracted person?

<comment><USER18> >Is it possible that people who learn or do something focussedly over a long stretch of time (practice music 4 hours a day) show larger development over those same areas than the average distracted person?

It's more than possible -- it's well-documented with some kinds of meditative practice. [1]

The only interesting question this article raises for a knowledgeable person is whether or not the Sanskrit language _itself_ would have an effect on cognition, but it never succeeds to prove it would or offer a mechanism for how it would work, and instead asks for funds for more studies.

[1] [https://www.reddit.com/r/meditationpapers/top/?sort=top&t=al...](https://www.reddit.com/r/meditationpapers/top/?sort=top&t=all)

[https://www.reddit.com/r/MeditationNerds/top/?sort=top&t=all](https://www.reddit.com/r/MeditationNerds/top/?sort=top&t=all)

</comment></comment><comment><USER19> > Does the pandits' substantial increase in the gray matter of critical verbal > memory organs mean they are less prone to devastating memory pathologies > such as Alzheimer's? We don't know yet, though anecdotal reports from > India's Ayurvedic doctors suggest this may be the case.

If there is such an association, self-selection bias must be accounted for. It might be that dementia risk factors or subclinical pre-dementia pathology makes a person less likely to pursue training as a pandit.

Also, anecdotal reports from Ayurvedic doctors suggest a lot of things. For example, that the right sort of yoga practice leads to 80-year-olds who look and feel like teenagers.

<comment><USER20> 80-year-olds looking and feeling like teenagers is stretching it, but Yoga is magical in making you look/feel younger.

</comment></comment><comment><USER21> Well, I've read Snow Crash yesterday.

How interesting...

(Anyone who read the book can relate...)

<comment><USER22> Nam shub of enki indeed

</comment></comment><comment><USER23> while this is interesting, it would be good to know if the memorizing of other texts - say, the works of Shakespeare, or Encyclopedia britannica, would have a similar effect. It is perhaps not the mantras, but the act of memorization perhaps?

<comment><USER24> Strong oral traditions still exist, or did until recently, in the Balkans around their lengthy epics and wedding hymns. There may be some traditions in northern Europe clinging on for dear life as well. In the classical tradition, it was a hallmark of leaning to memorize long blocks if not whole works of Homer, Vergil, and various Elegiac poets.

Part of the problem in teasing out the effect is that there is an inherent selection bias in the type of people who receive this type of education (or any education, in the not too distant past) to conclude from population analyses to what degree the particular task of literary memorization confers this benefit. Someone's going to have to ferret out the mechanism or do controlled longitudinal studies, which will be costly and fraught with difficulty. Even Socrates (i.e. Plato) was attuned to the idea that memory was under attack with the advent of writing[0] and a culture that has other information retrieval technology, so it's debatable whether we could really plumb the depths of what human cognition could be under different pressures. It's also unclear how early this kind of training has to be started too in order to have an effect.

[0][https://blogs.scientificamerican.com/literally-psyched/on- wr...](https://blogs.scientificamerican.com/literally-psyched/on-writing- memory-and-forgetting-socrates-and-hemingway-take-on-zeigarnik/)

</comment></comment><comment><USER25> The Sanskrit Effect is result of repeating specific mantra words that occur in the text. [https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3099099/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3099099/) It will be much easier just to chant the specific "brainy" mantras(such as brim/aim) instead of hours of random text.

</comment><comment><USER18> >Although this initial research, focused on intergroup comparison of brain structure, could not directly address the Sanskrit effect question (that requires detailed functional studies with cross-language memorization comparisons, for which we are currently seeking funding), we found something specific about intensive verbal memory training.

This quote, coupled with a lack of a proposed mechanism as to how the Sanskrit language would itself have an influence on cognition, means that as far as we know right now there is no such thing as the Sanskrit Effect.

It makes for a catchy headline, though, and the other stuff in the article speaks to my own successful experiments in memory training -- if interested, look up the books from the World Memory Championship winner.

</comment><comment><USER26> Funny, I just read Andre Weils biography, and one thing that stood out about it was that he spent a lot of time learning sanskrit. I wonder if there's a connection between this and his massive intellect.

</comment><comment><USER27> From the article "Our study was a first foray into imaging the brains of professionally trained Sanskrit pandits in India. Although this initial research, focused on intergroup comparison of brain structure, could not directly address the Sanskrit effect question (that requires detailed functional studies with cross-language memorization comparisons, for which we are currently seeking funding)," Is it just me who thinks that this disclaimer negate whole point of research ?

<comment><USER28> I too don't think a language by itself don't have a certain effect on brain development. But Brahmins (who study vedas in India) starting learning Vedas at about 4 years of age, if am not wrong, chanting it daily morning from 4.am for couple of hours. That would definitely have an impact on your brain. Remember the study which showed London taxi drivers had bigger brains?

[https://www.wired.com/2011/12/london-taxi-driver- memory/](https://www.wired.com/2011/12/london-taxi-driver-memory/)

</comment></comment><comment><USER29> Does anyone have recommendations for a good Sanskrit book for the self- learner? Years ago I tried Coulson's "Teach Yourself Sanskrit" but found it too dense, and more recently have been considering Ruppel's "The Cambridge Introduction to Sanskrit" ?

<comment><USER12> The best book I've found for self-study is the two-volume set by Thomas Egenes ( _Introduction to Sanskrit_ ). It's very gently paced, though, so you need to have the motivation to stick through till the end (about 400 pages in Part 1 and about 450 in Part 2).

Other alternatives are to contact a local chapter of the volunteer organization Samskrita Bharati if there's one (or watch these videos produced by them: [https://www.youtube.com/playlist?list=PLudSN7Po9muLeRM6545s6...](https://www.youtube.com/playlist?list=PLudSN7Po9muLeRM6545s68eakbxwZRpEJ)), or to try [http://www.learnsanskrit.org/](http://www.learnsanskrit.org/) for something online. See more book reviews at [https://sanskritstudio.wordpress.com/book- reviews/](https://sanskritstudio.wordpress.com/book-reviews/)

If you say what _your_ reasons are for learning Sanskrit, there may be other suggestions….

</comment></comment><comment><USER30> What about the IQ of those people? Not that IQ were of any huge significance, but that's the first thing probably come to mind of any researcher.

</comment><comment><USER31> wait why isn't this reverse causation?

people with strong verbal memories will choose to memorize mantras.

<comment> Ar-Curunir Because there isn't really a choice involved here.

<comment><USER31> aspiring pandits who can't keep up won't graduate to the author's sample group</comment></comment></comment>


Top Reasons Why The BMI Is Bogus  - <AUTHOR> http://www.npr.org/templates/story/story.php?storyId=106268439&sc=fb&cc=fp <comment><USER3> The article is correct in that a _very_ muscular and physically fit person can achieve a high BMI score, erroneously suggesting they are overweight.

But on the other hand, is there _any_ risk at all that said _very_ muscular and physically fit person is deluded into thinking he (it's almost impossible to be a female and get an "obese" BMI rating due to muscle mass) is actually obese?

While BMI is a very inexact measurement, one that can be flat-out wrong in many circumstances, people who have a "handful" of grabbable tissue on their waist should not henceforth blame their high BMI score on their excessive _muscle_ mass.

<comment><USER4> I don't think the article is directed at people worrying about their own BMI, but when it is used by say, adoption agencies or insurance companies, etc. I seem to remember a case here in the UK where a couple weren't allowed to adopt because the man had a high BMI because he was a gym enthusiast or something.

<comment><USER3> I didn't think of that, quite honestly. You're quite right.

On the other hand, don't you agree that the _actual_ problem in cases like that is rigid policy making with no regard for circumstances, rather than BMI itself?

<comment><USER5> It's both - basing policy on a bogus metric will almost inevitably lead to problems.

<comment><USER3> It spells disaster, for sure. But basing a rigid policy with no regard for circumstances on a decidedly _non-bogus_ metric like body _weight_ will lead to similar problems.

</comment></comment></comment></comment></comment><comment><USER6> Still, if the proportion of people with high BMI changes, it has to mean something. I don't think the number is quite as useless as the article makes it out to be. But of course for individuals one might have to look at more parameters. It is just a rough guideline.

</comment><comment><USER7> I've long thought that the only real benefit to BMI is psychological - <USER2> gives doctors a way to tell their obese patients that they need to lose weight in a way that is less likely to hurt their feelings.

Let's face it, if someone is fat, you don't need BMI to tell you that. The important point is that many Americans are fat, have a terrible diet, and need to lose weight - not that the fatness formula is slightly off and gives a few too many false positives.

<comment><USER8> So I'm not fat - I'm big muscled?

</comment></comment><comment><USER9> BMI suffers from the GIGO problem, since its inputs are height and weight. It is no more valid than the "height/weight" tables that were the fad previously.</comment>


Google Troubles Begin - <AUTHOR> http://money.cnn.com/2007/07/20/magazines/business2/google_earnings.biz2/index.htm?postversion=2007072016

<comment><USER2> This is pretty old news. GOOG beat estimates for Q3 and the outlook is good at this point.</comment>


Collaborative Programmable Music - <AUTHOR> http://overtone.github.io/ <comment><USER2> If anyone is interested, the default language for writing Supercollider programs is based on Smalltalk. The standard library is well organised and was a revelation to me on how to use OO properly.

The main mechanisms used for composition are lazy streams (via generators), events (via prototype-like composition), and higher level structures (via classes).

Of course the client has been replaced by Clojure in Overtone, and I'm pretty sure I've seen JavaScript clients in the wild as well...

It's worth pointing out that the underlying synthesis and routing engine is extremely versatile, with signal graphs compiled from a user-authored OO AST.

I'm looking forward to returning to Supercollider next year as I'm hoping to return to study sound design and composition. My stuff is currently at soundcloud.com/slex...

<comment><USER3> Really enjoying your Soundcloud, and wanted to mention that I too am a SuperCollider lover. As you say, the language constructs and standard library are quite impressive, and they go a long way to facilitating creative coding.

I've been wanting to get into functional programming for a while, so I think I'm going to play with Overtone - seems like a fun way to learn Clojure!

<comment><USER2> Thanks for listening, glad you like it =) There's more to come in the next few weeks...

</comment></comment></comment><comment><USER4> Massive coincidence, I just wrote an ebook about hacking music with Overtone (and also Node.js) and published it on my blog. I hope the link doesn't get me hellbanned:

[http://gilesbowkett.blogspot.com/2013/11/new-ebook- hacking-m...](http://gilesbowkett.blogspot.com/2013/11/new-ebook-hacking- music-and-midi-and.html)

</comment><comment><USER5> Can anyone confirm whether this is the software used by the AlgoRave collective in the article that was posted the other day. I tried looking around their websites for the software they used, the closest I reached was that it used haskell. (AlgoRave article: [https://news.ycombinator.com/item?id=6808744](https://news.ycombinator.com/item?id=6808744))

This looks very similar however It doesn't mentioned haskell anywhere, despite the syntax looks like haskell/a similar functional language.

<comment><USER6> Everyone uses different tools. Lots of people build their own. Overtone, the tool in this post, is a clojure frontend to SuperCollider ([http://supercollider.sourceforge.net/](http://supercollider.sourceforge.net/)). Overtone is used to describe synthesiser networks which are then executed by SuperCollider.

</comment></comment><comment><USER7> Here is a presentation of Overtone from Sam Aaron at the clojure conj 2011. [http://youtu.be/imoWGsipe4k](http://youtu.be/imoWGsipe4k)

</comment><comment><USER8> I'm a proficient keyboard (piano, analogue synth, workstation) and woodwind player (and not quite as proficient programmer). Can someone sell this to me as to be honest I have no idea what it does or where I could stick it in my workflow?

</comment><comment><USER9> What do you think of ChucK for the same purpose, anyone?

<comment><USER10> Linguistically, ChucK reminds me of PHP. That said, if you want to learn it, [https://www.coursera.org/course/chuck101](https://www.coursera.org/course/chuck101)

<comment><USER9> It looks like Java/C++, with an interesting syntax. Concurrency model and time and duration as builtin types makes it interesting.</comment></comment></comment>


Please give feedback on our YC app - <AUTHOR> http://nicholasdrake.svbtle.com/preview/lmbei1MHvAtYBliq8Gfa/

<comment><AUTHOR> 'Constantly seek criticism. A well thought out critique of whatever you're doing is as valuable as gold and you should seek that from everyone you can but particularly you're friends. Usually your friends know what's wrong but they don't want to tell you because they don't want to hurt you. They say 'Oh I want to encourage my friend so I'm not going to tell him what I think is wrong with this product.' It doesn't mean you friends are right, but very often they are right. And you at least want to listen very carefully to what they say and to everyone. You're looking for, basically you should take the approach that you're wrong. That you the entrepreneur are wrong. Your goal is to be less wrong.' [https://www.youtube.com/watch?v=0Bo- RA0sGLU](https://www.youtube.com/watch?v=0Bo-RA0sGLU)

<comment><USER2> This is a great philosophy. It's going to hurt a lot of the time, but not as much as losing a bunch of your own money and firing good people. Keep it up!

<comment><AUTHOR> haha thanks. elon musk is one of my heroes [http://nicholasdrake.svbtle.com/my-favourite- quotes](http://nicholasdrake.svbtle.com/my-favourite-quotes) these are some other great quotes from him (and others)

</comment></comment></comment><comment><USER2> This is difficult in the US to the point of being impossible (if it's not unenforceable from a legal standpoint to begin with). It can only work as debt, which is why similar companies have created P2P student-loan financing[1][2][3].

In the US, you can't issue shares for sole proprietorships (meaning you yourself are the business). Any entity whose ownership needs to be sold to multiple people will need to be a partnership or corporation.

Let's pretend there's a student named Bob. Your company must create a corporation for Bob and then sell shares in it to investors. There would also have to be a contract between Bob and the corporation saying that Bob will pay _x_ % of his future salary to the corporation for _y_ years.

Now let's say Bob doesn't want to continuing paying the investors. He can work as an independent contractor, which would make it nearly impossible to figure out how much he's earning. He can also just refuse to cooperate.

This would inevitably end up in court. A judge would decide if the original contract, where Bob agreed to pay the corporation _x_ %, was enforceable. It's possible the judge wouldn't agree.

But let's say the judge agrees it's enforceable. All Bob has to do is declare bankruptcy, and any damages awarded by the judge go away. That leaves the corporation (and your investor clients) with huge legal bills, at least in the tens of thousands of dollars.

Even if that scenario only plays out 1% of the time, you still have to adjust your interest rates to compensate for the risk. At that point, your interest rates have now become higher than a regular student loan, which a reputable person can get for under 8%.

Furthermore, once people have graduated, they can refinance their student loans for much more reasonable deals, which means that even your stated 5% rate would be higher than what they could potentially get on the open market as a gainfully employed adult.

If you then consider the huge percentage of college students who fail to get a good job (or any job at all), plus the ones who die or become disabled, your investors just can't feel confident enough to accept a low interest rate like 5%.

In the US, Congress passed a law saying that student-loan debt is not forgivable. That means that even if a student goes bankrupt, s/he can't get out of paying back the student loans. That means that, even with a guarantee of payment and the goodwill of the federal government, a student loan is only worthwhile at more than 6%.

So basically I don't think this concept works from legal, financial, or economic standpoints. It also smells a bit too much like indentured servitude, which the public would frown on anyway.

1\. [https://commonbond.co](https://commonbond.co)

2\. [https://www.sofi.com](https://www.sofi.com)

3\. [https://www.lendingclub.com](https://www.lendingclub.com)

<comment><AUTHOR> thanks so much for all your great feedback. although we are open to new ideas (and potentially the idea of doing it in the us - ironically because we think the political/regulatory/legal environment is going to be more stable) we are actually targeting china as the most likely place we want to invest (this is just a first draft of the website but as you can see it's in chinese! [http://www.seldoncapitalpartners.com/](http://www.seldoncapitalpartners.com/))

the main reason for choosing china is because university is much cheaper there relative to incomes. the key equation is

L _p = x_ u

where L=lifetime income y=number of years working u= total cost of university, x = return to investor e.g. x=4 means you invest $1 and you get $4 (compound interest therefore over the assumed 35 years is x^(1/35)) p = contracted percentage of income... y = number of years

you can re-arrange this to

dividing both sides by y you can re-arrange to find the ratio of annual income (l=L/y) to total cost of tuition fees.

l/u = x/(yp)

what you find is that even for a relatively modest return, let's say x=8 (i.e. a 35 year compound interest rate of 6.1%), if p=0.02, y=35 u need average annual income l to be a whopping 11.4x the cost of university, which is u is assumed at a modest $20,000 then income needs to be $200,000+...

this makes us feel like it's not possible in the developed world, univeristy is just too expensive, however the best universities in the developing world are very cheap (by western standards). e.g. the best university in china (arguably) is tsinghua university where a four year education costs just $3,000/4,000 (tuition and accomodation)... we think that given we are hand- picking the brightest students in china in subjects that we think will be lucrative, plus the fact that over 35 years you have a lot of economic growth to help you out it's not unreasonable to assume average lifetime income could be at a $40,000+ order of magnitude...

in terms of the 'shares' issue, i don't think that would work for all the reasons you raise... really you would probably need to actually have it treated as a completely new asset class... three potenial examples of how it could work are a) taxation because an individual is liable to pay their taxes and these are often a percentage of income rather than a flat fee and b) a form of security e.g. think about how abs contracts were built on the income streams from mortgage payments c) mortgages themselves, there the income stream is securitized by the underlying asset the house - in our case the secruity would be the income stream itself.

i think the refinancing poitn is very interesting to consider, we actually thought we might start off (to get proof of immediate returns) by actually offering students with loan debt who have already graduated a chance to convert that into our 'human capital' the thought process being is that loan debt punishes you for not paying a lot immediately (as the interest builds up), whereas our contract because it's over a working lifetime's income stream means you can basically trade future consumption (when your income is much higher) for current consumption.

our main observation is that in the developing world there are a lot of people who are credit-constrained when it comes to going to university. we think this doesn't make sense and so we hope to change that.

to be clear btw, our 5% rate is % of income, not % of interest on debt... plus we think 2% can work in china (for the reasons given above).</comment></comment>


Making a Game in Rust - <AUTHOR> https://michaelfairley.com/blog/i-made-a-game-in-rust/ <comment><USER2> Great stuff, lines up a lot with what I'd care about as an ex-gamedev and spending a bit of time with Rust. One minor point:

> First class code hot-loading support would be a huge boon for game > developers. The majority of game code is not particularly amenable to > automated testing, and lots of iteration is done by playing the game itself > to observe changes. I've got something hacked up with dylib reloading, but > it requires plenty of per-project boilerplate and some additional > shenanigans to disable it in production builds.

Lua is a great fit here and interops with Rust(and just about everything else) very well.

<comment><USER3> A long time ago I wrote bindings to Lua 5.1 ([https://github.com/kballard/rust-lua](https://github.com/kballard/rust- lua)), but there was a nasty problem where Lua uses longjmp() for errors (it can be configured to use C++ exceptions, but that doesn't work because you can't throw those past an extern C boundary without hitting undefined behavior). longjmp(), of course, will just skip right past the intervening stack frames, meaning if your Rust code calls into Lua and it throws an error, then unless you wrapped that call with a lua_pcall, any values that live on the stack of your Rust function will never call their destructors.

I admit I haven't bothered to research the current state of things, but how do more recent Lua bindings handle this? Does Lua 5.3 actually have a proper solution here, or do most bindings just wrap every single call with lua_pcall? I didn't do that in my bindings because I wanted to offer the full speed of Lua, but it's certainly an option.

<comment><USER2> That's still pretty much the state of the world. I think that's a trade-off that makes sense as long as you're aware that you shouldn't be depending on drop functionality in callbacks(I would hope that your initial point is dostring/dofile and let that catch handle things).

Generally I've found that any time you're interacting with an FFI in Rust all bets are off and you need to be very aware of what your libraries do and what their runtime looks like(just in C/C++).

<comment><USER3> I had intended to write a compiler plugin for rust-lua that added a lint that would ensure you have nothing on the stack with Drop when you call a (potentially-error-throwing) Lua function. But I never got around to doing that because I stopped using rust-lua (I canned the one project I was doing that motivated rust-lua in the first place).

</comment></comment></comment></comment><comment><USER4> I largely echo the sentiment of using Rust for game development. The world doesn't need another Flappy Bird clone but that's what I wrote because I ended up porting a Go version that was using SDL originally by Francesc Campoy from the Golang team: [https://github.com/campoy/flappy- gopher](https://github.com/campoy/flappy-gopher)

I was able to build the Rust version fast, and the SDL library is actually quite usable/stable for most things.

Flappy-Rust has particle effects, the beginnings of parallax-scrolling and basic collision detection. The rust code ended up being pretty reasonable however I'm quite sure there are a few places I could have simplified the sharing of assets.

If anyone is interested in this space check out my repo: [https://github.com/deckarep/flappy-rust](https://github.com/deckarep/flappy- rust)

Also please see the README.md where I talk a bit more in-depth about how the Rust version differs from the Go version.

Here is a .gif preview of the first iteration of the game: [https://github.com/deckarep/flappy- rust/blob/master/flappy-r...](https://github.com/deckarep/flappy- rust/blob/master/flappy-rust.gif)

</comment><comment><USER5> It would be nice to have a minimal gameish program as a example for people learning Rust.

When I teach kids javascript I start with an etch-a-sketch. It's aided by a simple library to hide the mechanics of the HTML canvas element, context, etc. This allows it to be small enough that they can view it all in one go and build upon it.

        print("Draw with the arrow keys");

        var cx=320;
        var cy=240;

        function update() {
          // the arrow keys have key codes 37,38,39 and 40
          if (keyIsDown(38)) {    cy-=1;  }
          if (keyIsDown(40)) {    cy+=1;  }
          if (keyIsDown(37)) {    cx-=1;  }
          if (keyIsDown(39)) {    cx+=1;  }

          fillCircle(cx,cy,6);
        }

        run(update);

There might be merit in writing one of these in every language (and a companion that uses the mouse), maybe placing it on github . With a really simple program like this you can focus on learning the language while making something. It's a tough job figuring out how to learn a language while simultaneoulsy learning how to write the boilerplate needed to get something onscreen.

<comment><USER6> For simple pixel access and no primitives, [https://github.com/emoon/rust_minifb](https://github.com/emoon/rust_minifb) is very compact and neat.

Otherwise rust-sdl2 is batteries included, there may be more ceremony than html5 canvas but it's easy to hide behind a simple interface. It has many simple examples.

But, like with C++, as long as the language doesn't come with a standard graphics library, I doubt the "official" books can really use graphics apps as a learning tool.

<comment><USER5> Easy to hide behind a simple interface if you already know the programming language. My suggestion is that someone perhaps should do just that so that beginners don't have to learn how to construct a simple interface at the same time as they are learning the language.

The MiniFB code does seem to be a good starting point for this sort of thing.

<comment><USER6> Yeah, I was just echoing your comment that you provide a small library for HTML5 canvas-based teaching. If I was going to teach someone Rust, I would definitely do that, but of course I (the teacher) would need to know enough to build it in the first place.

I absolutely advocate using graphics and games as the hook to keep people interested in learning. [1] "The immediacy of many 8-bit computers was awesome. Instant boot to a graphics-ready command line and program editor. I was instantly hooked". And that's why, despite the really bad fit, I support the addition of a 2d std library to C++, and would do likewise for Go, Rust, etc.

[1] [https://twitter.com/TheJare/status/860094027370291200](https://twitter.com/TheJare/status/860094027370291200)

</comment></comment></comment></comment><comment><USER7> > The include_* macros are great for "packaging". Being able to compile small > assets directly into the binary and eschewing run time file loading is > fantastic for a small game.

For C/C++/etc devs looking for something similar, BFD objcopy supports an "-I binary". It will emit an object file with _binary_objfile_start, _binary_objfile_end and _binary_objfile_size symbols.

But I have got to say that making it a language feature means that Rust is truly a batteries included language.

<comment><USER8> Agreed. I code in C# and there's facility for bundling assets into the binary but they're handled at the project file level and not the C# file level, and this means the keys to access this binary content is not available as a compile-time constant. You're still just passing strings around and hoping they match.

Having first-class language support for resource files looks fantastic.

<comment><USER9> > and this means the keys to access this binary content is not available as a > compile-time constant

Isn't that exactly what resource files give you or am I confusing something? Anything you add in resource files have are accessible as a static variable.

<comment><USER10> It looks like you're right (for C# at least): [https://msdn.microsoft.com/en- us/library/7k989cfy(v=vs.90).a...](https://msdn.microsoft.com/en- us/library/7k989cfy\(v=vs.90\).aspx#Anchor_2)

</comment></comment></comment></comment><comment><USER11> I wasn't even aware that you were allowed to ship Rust code in iOS apps, I thought that Apple had a whitelist of allowed languages?

EDIT: And for those interested, you might want to check out Rust's recent inclusion in a AAA title: [https://www.reddit.com/r/rust/comments/69s225/rust_makes_it_...](https://www.reddit.com/r/rust/comments/69s225/rust_makes_it_into_a_aaa_video_game_as_an_art/) :P

<comment><USER7> Really? How do they know what the representation of the object code was before compilation? Seems like if they had a whitelist it would be difficult to enforce.

<comment><USER12> The biggest problem I faced with Rust and macOS/iOS is related to Apple's requirement for bitcode on all submitted code to the App Store for Watch and appleTV applications.

This internal Rust discussion focuses on it for more details: [https://github.com/rust-lang/rust/issues/35968](https://github.com/rust- lang/rust/issues/35968)

This gist is that Apple is requiring bitcode, but isn't giving easy access to the LLVM version they use for their own tools. This means there's not a path forward to support bitcode generation from Rust that would align with Apple's requirements. This currently only effects iOS on Watch and TV, meaning you can easily target macOS and iPhone without issue, but I fear that the writing is on the wall.

<comment><USER13> I continue to be amazed that apple is not considered as having a monopoly on "stores for apple devices".

These are exactly the kind of archaic requirements that would be a nonstarter or otherwise _kill_ market support for a store given any actual competition.

Instead, they are able to leverage it to try and push their 'approved' languages and developer environments - furthering anticompetitive lock-in.

Apple making money from selling devices (or even distributing "at a loss" devices which they benefit from having exist so they can better act as software vendors) and them making money from their store are two separate revenue streams, after all.

<comment><USER3> "products made by one brand" isn't a category of products. If they're the only brand that makes products for a particular category, then they're a monopoly, but you cannot simply define a category as "stuff made by that company", because by that logic, every company is a monopoly on stuff made by them.

<comment><USER14> Actually, a makers own products are a distinct market for antitrust purposes if people empirically don't substitute out of it, as shown by the producer having market (pricing) power.

I wouldn't be surprised if that's true for Apple for some of its offerings.

<comment><USER3> It's not. The only product you could even try to make the argument for is the iPhone, but the generally-accepted categorization here is that iPhone and Android phones (and Windows phones) are part of the same category, which makes sense because people absolutely do switch between them.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> > I had two or three false-start attempts at learning Rust where I'd spend a > few hours with it, not get anything done, and put it down until a few months > later

This sounds (sort of) encouraging. I was kind of expecting to learn it by putting in an hour here and there e.g. 2-4h/month. But I'm beginning to think that might not cut it...

<comment><USER16> Go is a language that you can absolutely learn like that, and it's pretty amazing. (Python, too)

Rust ... isn't. I love Rust, but you do need to put some dedicated time into learning it. We're hoping to improve this!

<comment><USER17> Whilst an easy start is nice, any language that you can pick up with no effort just means you're learning the same language + paradigm that you already know with a few differing features (in go's case CSP). Nothing wrong with that, CSP is awesome etc

I'm not a rust dev (definitely interested in picking it up though), but heavily into clojure and learning haskell slowly on the side. I hear this complaint a lot from people who think that because they learnt C#, Go, Java and Swift in a weekend that all languages will be just as quick to stick in their heads.

<comment><USER6> A lot of people have to unlearn "classic" OOP inheritance in order to learn Go. That's a significant change in paradigm.

</comment></comment></comment></comment><comment><USER18> I would love to read a detailed explanation of the packaging process for iOS and Android.

<comment><USER19> The author should seriously consider factoring out his build scripts and start a crowd-funding campaign to open source it for X thousands of dollars. Hell, I don't even know Rust and I'll donate ten bucks.

The five platforms support is bloody impressive.

</comment></comment><comment><USER20> Neat! I was just complaining about the lack of multiplatform Rust games proving out the concept. If only there were some consoles or handhelds on the list... although iOS/Android being on the list is somewhat encouraging.

</comment><comment><USER21> The performance on my Android phone (Nexus 6) is not good. I would have thought Rust would be fast. The fps is fairly low, a lot lower than Maps or Chrome, at least when Maps isn't freezing up. And it seems the transitions between levels might be proportional to fps, because they are irritatingly long.

<comment><USER20> I'd guess any performance problems are probably on the GPU / OpenGL side of things, which Rust won't help with (nor hurt). The Nexus 6 has a 1440p screen powered by a mobile GPU maybe a little weaker than _previous_ generation consoles (~172 gflops max for the Adreno 420, vs e.g. ~220 for the PS3 [1]) that were often handling 720p titles (a quarter of the pixels). _Very_ easy to exceed your frame budget.

[1] [http://gpuflops.blogspot.com/](http://gpuflops.blogspot.com/)

</comment></comment><comment><USER22> About floats implementing _PartialOrd_ and not _Ord_ :

I have not tried out Rust yet, but couldn't this be solved by wrapping the float in a single-field struct that checks for NaN on construction, implements _Ord_ using _PartialOrd_ and otherwise passes everything through to the ordinary float inside?

If this isn't possible, I'm definitely interested in the reasons.

<comment><USER23> Every calculation will have to check for NaN, so it's a non-starter when you need a lot of float calculations.

<comment><USER22> The problem was in the context of looking up _min_by_key_ with the key being a floating-point number, so I think the only NaN-check necessary should be for that key. I did not intend to imply that it should be done for all calculations, only those that need totally-ordered floats. (Or if you are really sure NaN will never happen, you leave out the check altogether, and claim total ordering anyway.)

<comment><USER23> I guess that is a particularly bad use case of specialization, which itself is proposed as an RFC [1] and approved for implementation. It would look pretty similar to, say, C++'s `vector<T>` and `vector<bool>` split, because it does something more than what it should do. Probably the better solution is to merge PartialOrd and Ord, as the benefit from having two traits has been always unclear (I personally have no strong opinion against or for that though).

[1] [https://github.com/rust- lang/rfcs/blob/master/text/1210-impl...](https://github.com/rust- lang/rfcs/blob/master/text/1210-impl-specialization.md)

</comment></comment></comment></comment><comment><USER24> It is an interesting educational project but staying away from Unreal or Unity3D is really a tough decision if your project is going to need some more features that are already developed and well tested in one of these engines.

<comment><USER25> In my experience, the real value of the engines aren't "features", but tools oriented at level designers and artists. Once you have a project with 10 or more members, managing art and assets becomes a real headache - and most of homegrown solutions, as well as open source engines start to fall apart at this point.

</comment></comment><comment><USER26> Great writeup. Eye opening that you can actually write iOS apps with rust. w00t, totally trying this for my next app. (It's a bit overly bit expensive for my liking but otherwise I would have given your game a shot).

</comment><comment><USER27> Is there a write-up on how the rust code ends up being embedded in the iOS app?

</comment><comment><USER28> that's a great twist on the snake game. does rust compile to wasm?

<comment><USER29> Yes, Rust can compile to WASM.

[https://hackernoon.com/compiling-rust-to-webassembly- guide-4...](https://hackernoon.com/compiling-rust-to-webassembly- guide-411066a69fde)

<comment><USER28> I want to do an experiment with object oriented code that generates view code in wasm and keeps other code in the server.

</comment></comment></comment><comment><USER30> Screenshot, please!

<comment><USER31> Hit the second link in the article for a video: [https://m12y.com/a-snakes- tale/](https://m12y.com/a-snakes-tale/)

</comment></comment><comment><USER32> Did a double take on the title.

</comment><comment><USER33> This is probably not a popular opinion here in HN but why does it matter what language you use to make your game in? You can use virtually any language to make a game. From my point of view the best language for a game is that which makes you the most productive for cranking out that code. And we all have our own personal preferences about which language is best, which I think is fine, you should code with the one that you feel most productive with. At the end of the day users will not be able to tell the difference. All that matters is whether your game is fun or not.

<comment><USER34> 100% agree with you. _However_ \- posts like these might give encouragement to people who know a language that they can actually accomplish Project XYZ in said language, especially if there's accepted norms about what types of work a language is "good for".

<comment><USER33> Although I did not point it out, I'm talking about experienced software/game developers. A novice can definitely make the mistakes you are mentioning, which makes your comment a valid point.</comment></comment></comment>


ReactOS X64 boots on modern hardware with RAM-disk - <AUTHOR> https://www.youtube.com/watch?v=-rgsXXbs2FA <comment><USER2> It just needs better driver support. It looks good so far.

<comment><USER3> Exactly. When a long-standing lack of USB drivers means that you can't even install ReactOS on many machines, there's been a definite failure in the allocation of development resource priorities.</comment></comment>


Checking up on realloc efficiency - <AUTHOR> http://www.tedunangst.com/flak/post/checking-up-on-realloc-efficiency <comment><USER2> Ted's C programming posts make me feel really old, because I can remember exactly the same programming topics being discussed _in the mid 90s_. And that's C development for you, really.. every old bug is new again.

It's frankly boring that 20 years later we still feel attracted to discuss any of this stuff. It's not like the machines or the code running on them have fundamentally changed in the interim..

<comment><USER3> Not fundamentally changed, but some things have become more expensive so old assumptions and optimisations should be re-evalued, it's just sound engineering really.

<comment><USER4> One of the best examples of this being the increasing gap between memory and CPU speeds. Good cache usage is far more important than before.

<comment><USER3> Yes, I had that example in mind.

Another example, I might be wrong here though, is the ooold disk handling code in BSD, where you had to specify cylinders, heads and other things, and the OS tried to optimize performance based on closeness. See here for more info: [http://www.cdf.toronto.edu/~csc369h/fall/lectures/w10/DiskIO...](http://www.cdf.toronto.edu/~csc369h/fall/lectures/w10/DiskIO.pdf)

Today, I imagine most I/O interfaces use a large block index instead of cyl/disk/head and other ancient specifications. All the optimizations about head and so on is device dependent and is best handled by the disk itself.

Imagine the feeling of being able to delete old code in the disk subsystem and get a cleaner and more abstract view of the disk.

</comment></comment></comment></comment><comment><USER5> If I'm reading this right, it is advocating that malloc() calls be spaced in memory to increase the likelihood that realloc() won't need to relocate/copy the memory.

Isn't that a tradeoff of memory utilization vs. CPU? The memory holes you leave sitting around for a potential realloc() is memory that will be wasted if realloc() never comes, or if the new size is too big to fit anyway.

Any because of cache behavior, bad memory utilization is a CPU efficiency issue too.

So what's the right tradeoff here? That's what I was hoping to see in this article, but I didn't see any evaluation of that tradeoff. Since it is inherently a tradeoff, it seems like it needs to be a data-driven decision rather than working exclusively from first principles.

<comment><USER6> More discussion would really help here.

I think, in some cases, spaced allocation will come (nearly) for free, since with 64bit addressing, there is enough space reserve (most processors can only use a fraction of this space as physical RAM). The other point is, that with the use of MMUs and a proper spacing (regarding the MMUs page size), the gaps come nearly "for free".

But I think, that needs very careful thought, to make it right and not unnecessarily introduce new tradeoffs, as you very talking about.

What you should not do, is use such spacing for small allocations. An other point would be, to inform the allocator, that it is likely/unlikely that a reallocation will be done ... in most cases, such information is available.

<comment><USER4> _An other point would be, to inform the allocator, that it is likely /unlikely that a reallocation will be done ... in most cases, such information is available._

I agree. A lot of blocks which get allocated are never resized (e.g. objects), while other blocks may be subjected to frequent resizing - expanding buffers and strings being the most common example. malloc()/realloc() are very simple APIs, and work for the general purpose of "I want to allocate some memory/resize it", but this simplicity also means that they can't take advantage of specific usage patterns very well.

Working with data of indeterminate size is always going to involve more complexity, and while it may look like a solved problem (just resize when there is not enough space left) as evidenced by the proliferation of string implementations in various languages, the efficiency aspects are more subtle and still well within the area of "programmer must know what he/she is doing". Designing systems and protocols that don't need resizing of allocations, for example (how long something is, is easily calculated and known in advance.)

<comment><USER6> The "one size fits it all" notion of malloc/free/realloc is just wrong. When you want optimal allocation performance, you can't get around specialized allocators of various sorts for various needs.</comment></comment></comment></comment>


When your city doesn't have a lot of 'startup talent' - <AUTHOR> http://college2startup.tumblr.com/post/8429337505/when-your-city-doesnt-have-a-lot-of-startup-talent

<comment><USER2> Went expecting a whiny article, but it's actually pretty good (mentioning telecommuting and a few local things you can do to get yourself in contact with the right people for your job).

+1</comment>


Ask HN: Are there any bookshops dedicated to computing / programming? Anywhere? - <AUTHOR> I love buying technical books and I was wondering if anyone knows of a physical bookshop that specializes in computing? Or does anyone know of a bookshop with a really intelligent / interesting selection and which avoids the usual learn X in Y minutes. I'm interested in a bookshop anywhere at all, since my interest is also in getting a sense of whether one could make a business out of it.
I am aware of https://en.wikipedia.org/wiki/Computer_Literacy_Bookshops, but can't find evidence of anything more recent.
I know many programmers would consider buying a physical copy redundant. I know many of the good ones are available as free PDFs or in other formats. I know my love of the book itself is not necessarily widely shared. Nonetheless the idea keeps coming back to me (I'd be happy to be cured of it).
Interested in all views. I am involved in the publishing industry in another life. So I understand the basic dynamics of bookselling...but I've no idea how most programmers feel about browsing and buying physical books about computing. <comment><USER2> I used to buy books at Computer Literacy ages ago, I probably still have one of their T-shirts in a box. Borders Books had a good selection of serious computer books in the stores in Silicon Valley. I would buy books there when I had a coupon. The Stanford Bookstore on campus has a great selection, including all of Don Knuth's books.

Amazon's discounting is obviously a problem. O'Reilly books has a daily email with one (or sometimes all) of their books in ebook format for half off.

There is large online marketplaces of used books, including used textbooks, which further undercuts new book sales.

</comment><comment><USER3> There's Reiter's in DC but I haven't been there in a decade, so I don't know how much technical stuff they have anymore: [http://www.reiters.com](http://www.reiters.com)

as well as Digital Guru in Sunnyvale: [https://www.digitalguru.com](https://www.digitalguru.com)

<comment><AUTHOR> Digital Guru looks like the kind of thing I was looking for. It's kind of funny how old school their site looks given their location and target audience but I might give them a call and just ask them "how's business"...

</comment></comment><comment><USER4> Powell's in Portland temporarily had a separate Technical Annex, but it only lasted a short time (a year?) before being absorbed back into the main building.

<comment><USER5> They still have a nice selection of technical books in the main store though. I'm here in Portland visiting now, and Powell's was pretty much my first stop. :-) They have a larger section of technical books than probably any other book store I've been in. And I'm talking just "computer stuff", that's not even counting the math/science stuff, electrical engineering / electronics, etc.

If anyone is ever in Portland, you'll definitely want to make a trip to Powell's if you like (dead tree) books.

</comment></comment><comment><USER6> While it's somewhat small, I always try to stop by the MIT Press store in Cambridge MA if I'm headed through the area.

</comment><comment><USER7> Ada's Technical Books in Seattle - mostly computing, although they also have books about other technical subjects.

<comment><AUTHOR> Thanks that looks really interesting</comment></comment>


In-Q-Tel, the CIA's VC Arm, Has Had a Busy Few Years - <AUTHOR> https://mattermark.com/q-tel-cias-vc-arm-busy-years/ <comment><USER2> Too many heroin profits and so few countries left to colonize.</comment>


Clojure dialect written in Go (Joker) - <AUTHOR> https://joker-lang.org/ <comment><USER2> Nice to see Nix mentioned last (save the best for last, right?) in the list of installation options on the GitHub page.

Exciting to imagine not having to mess around with Leiningen just to play with Clojure.</comment>


The Forgotten Mystery of Inertia - <AUTHOR> https://www.americanscientist.org/article/the-forgotten-mystery-of-inertia <comment><USER4> A drunk awakens in a void and finds his arms, legs, in fact all extremities are bing pulled outward by some reverse gravity. It is quite unpleasant.

By some strange mechanism he is able to make himself start spinning. At first it is worse: in one direction the reverse gravity increases in effect! So he reverses and is relieved to find that in the other it slowly abates. Though the sweet relief is strange. Because if he goes too far in that direction, he finds that the expulsatory force begins to increase again.

But eventually he finds the sweet spot and stays there, relieved, to find himself not being pulled apart. "This", he says to himself, "I shall call an inertial reference frame. It is so much more relaxing than the others."

<comment><USER5> would it be possible for a drunk in a void to change his rotation?

<comment><USER6> The story is phrased in a way that is delicately subtle, and thus elides the mechanism whereby the drunk can change his rotation.

Here's a hint: It's relevant that the person is drunk. Another hint: Newton's third law.

<comment><USER7> I call it my inbuilt vectoring urea reaction engine.

<comment><USER8> Since you're the only thing in this hypothetical universe, you better make sure your urea makes it to escape velocity (which shouldn't be hard), otherwise you'll make it rain.

</comment></comment></comment></comment></comment><comment><USER9> Anyone know of (or want to give) a clear explanation of how gyros behave? I found the article to be unclear on a number of points.

I was also unclear on this: "The first triumph of general relativity was its exact prediction of the orbital precession of Mercury's perihelion" —does a perihelion precess? I thought it was the planet which was precessing and the perihelion shifted (changing the shape of the planet's orbit?)

Also, I came across this (seemingly) related gem the other day: ("Why is Linear Motion Relative but Rotation Absolute?") [https://www.quora.com/Why-is- linear-motion-relative-but-rota...](https://www.quora.com/Why-is-linear- motion-relative-but-rotation-absolute)

<comment><USER10> Gyros are really simple! Think of the gyro's ring as a series of independent particles flying around really fast in a horizontal circle. Now you push up at one point on that circle. Does the circle move up at that point? No. You're applying a force to each particle only very briefly before it moves past and you're pushing on the next one. But you do impart some upward velocity on the particle during its brief time under your influence. This causes it to follow an upward path away from the point where you're pushing, which will continue until the circular path brings it back down. This will tilt the entire circle along the axis connecting the center of the circle to the point where you're pushing.

The faster the gyro spins, the less important the imparted velocity will be relative to the particle's speed, which is why a gyro is more stable the faster it spins.

<comment><USER11> _Inertia is not a property intrinsic to an object but depends upon all the mass in the universe._

That quote from the article really crystallized Mach's Principle for me. So continuing mikeash's great explanation... basically the rest of the universe is pushing the gyroscope into its stable position?

<comment><USER12> Don't rely much on Mach's Principle. It's a philosophical statement with exactly zero experimental evidence.

General Relativity would say somewhat the same thing, but in a very different form, with different results. GR would say that it depends on the geometry of the local spacetime, which, yes, does depend on all the mass in the universe, but not in the way that Mach's Principle would lead you to expect.

Note that GR, in contrast with Mach's Principle, _does_ have experimental evidence.

</comment></comment></comment></comment><comment><USER13> > If it is spinning extremely rapidly, the gyroscope remains rigidly locked in > the direction it has been set, its sights fixed on...Kiev—hence the term > inertial guidance systems.

This is clearly false... right?

If you translate the gyroscope, it won't be pointing at Kiev anymore, it will be pointing to the side of Kiev. The gyroscope doesn't magically point at a target, it provides a stable reference _direction_ that the rest of the IGS can compute its deviation from, to adjust its course.

<comment><USER14> He elides the inner workings of an inertial guidance system because it's not really necessary. The point is that the gyroscope provides an absolute reference point, which seems weird in the face of relativity.

<comment><USER13> I agree, but the intro is all about how this magical gyroscope is pointing at Kiev, even making a point about how the gyro is doing it after being separated from the rest of the rocket.

</comment></comment></comment><comment><USER15> There's also the Unruh effect [http://www.scholarpedia.org/article/Unruh_effect](http://www.scholarpedia.org/article/Unruh_effect)

</comment><comment><USER16> that a spinning gyroscope does not topple has not much to do with Mach, Einstein, the universe or any such big idea. I can explain it much more simply.

Consider a gyroscope spinning fast. so if all of a sudden you try a push its top northward then that instantaneous force pushes down on the north edge of the disk and up on the south edge.Those specific parts of the disk acquire momentum. However because the disk is spinning, the part of the disk that was north soon becomes south. and the southern piece that was moving up is now north. now the momenta of the influenced disk segments act to right the gyroscope. The same effect can occur during the acceleration of a gyroscope in a missile in space. Even tho there is no gravity. The effect of acceleration on the gyroscope is the same, causing it to maintain its orientation in space. The faster a gyroscope spins, the more quickly it rights itself. and thus appears more stable. as it slows down, the righting effect fails.

Angular momentum is a man made calculation and the upward pointing arrow is really just a make believe thing. If it were a real force, the whole gyroscope should float upwards. LOL. It is a shorthand to represent the average momenta of the influenced parts of the gyroscope.

<comment><USER17> > Angular momentum is a man made calculation

So is linear momentum, really.

I agree that you can analyze an actual physical gyroscope just in terms of linear momentum without reference to angular momentum, though the calculations end up harder. But there are things that have angular momentum that doesn't obviously correspond to linear momentum (circularly polarized light and nonzero-spin elementary particles come to mind).

</comment></comment><comment><USER18> Is Mach's principle related to equivalence principle? It's so strange that inertia mass just so happens to be exactly the same as gravitational mass.

Can Mach's principle and equivalence principle be derived from some more fundamental laws or are they accepted as axioms?

<comment><USER19> The equivalence principle follows naturally from the geometry of general relativity.

The idea is that mass curves space. In this curved space, a 'straight line' is no longer straight. The upshot of this is that if you are standing still, a 'straight line' would actually mean falling down. By inertia, things want to move in straight lines, so we feel gravity. It is an apparent force like the centrifugal force.

If this talk of straight lines in curved space is confusing, consider what passes for a straight line on the surface of a sphere. It still 'curves'.

</comment></comment><comment><USER20> Related: Newton's spinning water bucket

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

</comment><comment><USER21> So there was the animation that Caltech put out today or yesterday of the neutron star collision that was just detected, and it visualized gravitational waves moving outward from the stars:

[https://www.youtube.com/watch?v=e7LcmWiclOs](https://www.youtube.com/watch?v=e7LcmWiclOs)

It just reinforces the (incorrect?) intuition that spacetime is "something" rather than nothingness between things. Why can't motion be relative to spacetime rather than other objects?

<comment><USER22> I think you've confused the notion of nothingness, which may or may not even be real in practice, and spacetime, which is definitely a thing. Gravity is a result distortions in that thing.

<comment><USER21> Ok, so if that's the case, why can't objects be relative to spacetime rather than other objects, as discussed in the article?

<comment><USER15> Short answer: because tachyons don't exist (i.e. haven't been found)

Slightly longer answer: To be relative to spacetime would (most likely) mean having a means of transmitting information faster than the speed of light, but information cannot travel faster than the speed of light. * "The world line (or worldline) of an object is the path of that object in 4-dimensional spacetime, tracing the history of its location in space at each instant in time." [0] Something that would exist relative to spacetime (as in, would not be confined by the laws that dictate spacetime) would have to be outside of a light cone [1]; "In flat spacetime, the future light cone of an event is the boundary of its causal future and its past light cone is the boundary of its causal past."

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

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

* I don't know very much about quantum entanglement, so if anyone would like to comment as to whether entanglement might appear to violate transmission of information faster than c, that'd be neat, but i have a suspicion that it doesn't because either because of (A) a reason depending on the fact that qubits aren't like bits or (B) that the separation of two entangled subsystems would constitute the _actual_ transmission of information but would still necessarily be no faster than c.

<comment><USER23> This isn't true. Given a manifold that satisfies the vacuum Einstein equations and given a world line in that manifold, it can be shown that the world line is undergoing acceleration using only local calculations/measurements. The worldline of a particle on the edge of a gyroscope will have a non-vanishing acceleration and this can be computed using local calculations/measurements.

You can describe the manifold using a coordinate system corotating with the gyroscope, the worldlines will still have a non-zero acceleration. There is absolutely no need for any matter field satisfying hyperbolic PDE's with faster than light characteristics.

</comment></comment></comment></comment></comment><comment><USER24> Reading this bought immediately to mind watching Eric Laithwaite's Royal Society Christmas Lecture on the peculiar properties of gyroscopes. It's a shame he apparently pretty much deluded himself, because it was a great lecture

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

<comment><USER25> [https://youtu.be/g60ZCcquCl8](https://youtu.be/g60ZCcquCl8)

</comment></comment><comment><USER26> On a related note, those interested in the origins of the idea of inertia may be interested in impetus theory[1].

[1] [https://en.wikipedia.org/wiki/Theory_of_impetus](https://en.wikipedia.org/wiki/Theory_of_impetus)

</comment><comment><USER27> I can fit two thumbs in the header that won't go away. It's like reading trough a letterbox. Luckily I can use reader view but it would be better if it wouldn't be necessary at all.

</comment><comment><USER28> This reminds me of inertial navigation system demo's that I saw a while ago [1]. I'd suspect that the targeting gyroscope in an ICBM would look very similar to that system.

[1] [https://www.youtube.com/watch?v=w4yaNn4Xmfg](https://www.youtube.com/watch?v=w4yaNn4Xmfg)

</comment><comment><USER29> One question I've never seen answered to my satisfaction: If you created a gyroscope with two counter-rotating disks somehow identical in moment and location, would it fight precession symmetrically, or act like a block of matter with nothing rotating inside it?

<comment><USER30> Aren't those the same alternative? If something is fighting precession symmetrically, then isn't it acting like a block of matter with nothing rotating inside it?

<comment><USER29> a standard gyro fights precession at 90 degrees to the attempted off-axis rotation, and shows way more rotational inertia than can be accounted for by the mass involved.

</comment></comment></comment><comment><USER31> My following comment got rejected :D

"Taking the risk of sounding like a crackpot I will share some of my own thoughts on the subject - put together from bits and pieces I have stumbled upon.

It can hardly be argued that some knowledge is attempted hidden - mostly for the sake of power. And in my humble opinion, the mysteries of bodies in rotation is exactly one of those subjects.

This article is based on academic science and appropriately so, but when it comes to rotating bodies I don't think you will find the answer there - <USER2> least not in the post-Einstein era. You should at least go back to James Clerk Maxwell and his original 20 equations to get a hint of what's really going on. If Einstein himself was aware of the shortcoming of his theory or even put them there on purpose, is up for debate - leaving it to the reader to discover what's missing from the theory of relativity.

If one bothers to seek alternative sources of knowledge about rotating bodies, you will not be alone. And if you stick to it, you will find very interesting things indeed. Not only about rotating bodies themselves, but as to why some has determined it so important to keep the facts hidden.

Some events suggest that, at least in western science, the connection between rotating bodies and gravity was stumbled upon in the early post-war missile program when Wernher von Braun tried to put a rotating body on top of a rocket - believing that it would stabilize it.

There are of course scientists doing research into these things outside the constraint of normal academica and from time to time their findings find their way into the public domain. One example is experiments done by Dr. Bruce DePalma, which some are as simple as they are easy to duplicate.

For those of you curious enough to adventure into this field of alternative science, I wish you luck."

</comment><comment><USER32> > Would you feel centrifugal forces in an empty universe? Does the law of > inertia mean anything in an empty universe? Mach would give a resounding > "no" to both questions: Inertia is not a property intrinsic to an object but > depends upon all the mass in the universe.

If "you" can exist in a massless universe (that which encompass all that exist) - then, by definition, "you" have no mass. So insofar as mass is connected to inertia is connected to angular momentum (the need for acceleration/force to alter the direction of movement) - then: no, you would not be able to detect "centrifugal forces" without _any_ mass.

But, if "you" have mass and exist in a universe, that universe consist of at least the mass making up "you". Let's assume a sphere/clump of small magnets. Would it be possible to spin this sphere fast enough for it to disperse - <USER3> itself apart? I would think so.

</comment><comment><USER33> I don't get how the gyroscope is used in missile guidance. How is the gyroscope mentionned in this article pointing at Kiev? How do you read it on the gyroscope and how is the position 'set' in the device?

<comment><USER34> Actually, the gyroscope will give your angular rotation. It can be achieved through different technics (MEMS gyro, mecanical gyro...) but the final goal will always be to give you your angular rotation.

You need your angular rotation and the specific forces applied to your body (given by the accelerometers) to be then able to compute your position, speed... in the earth frame called NED (North East Down).

That's the very short version. You also need to know your Lla position to correct your gravity model, the error model of your sensor to correct them... Kalman filtering is always used (in my experience).

Here is a draw that seems accurate [https://en.wikipedia.org/wiki/Inertial_navigation_system#Met...](https://en.wikipedia.org/wiki/Inertial_navigation_system#Method)

Then if you want to go dirty hands, you will need these keywords : "inertial navigation mechanization". This PDF seems clear at first look (5s check) : [http://www.ecsutton.ece.ufl.edu/ens/handouts/inertialnav_v2....](http://www.ecsutton.ece.ufl.edu/ens/handouts/inertialnav_v2.pdf)

Kalman filtering can be overhelming but the course from D.Alazard is really great (still using it after 3 years in navigation field).

If you want a quick exemple, a north finder algo is very easy to understand (basic earth projection). It is also the first step of initialisation of a navigation system.

</comment></comment><comment><USER35> Maybe I'm wrong but it's wrong to say we don't know how a gyro works. We can accurately and precisely predict the behavior of a gyro, derive the mathematical equations necessary and the model we use is general for all moving objects. This is the greatest level of knowing you can have.

Maybe the author meant that a gyro's motion is not intuitive to most humans. That I can agree with. For me, even the fact that my smartphone is performing billions of calculations every second is non-intuitive. Doesn't mean I don't know how it works.

<comment><USER36> In physics (and in many other areas) it is unsatisfying to wave your hands and say "it is so because our measurements prove it". A theoretical model that explains why the measurements come out the way they do is far more valuable because it leads to other insights.

We can predict the behavior of a gyro but there is still a fundamental question of what a gyro is relative _to_ since GR tells us there is no universal reference frame. Are gyroscopes entirely local or does the gravity of distant galaxies present a sort of universal reference frame? Or is it something else entirely?

<comment><USER37> > Are gyroscopes entirely local or does the gravity of distant galaxies > present a sort of universal reference frame? Or is it something else > entirely?

Something else entirely. You don't need other galaxies or a universal reference frame. Even if the gyroscope were the only thing in the universe, it would be easy to tell if it were spinning: a very tiny person standing on the inside rim would be held down if it were spinning, or free floating if it were not.

<comment><USER38> This is exactly what Mach's principle disputes.

<comment><USER39> Then Mach's principle is a straw man, we do not have access to an empty universe.

</comment></comment></comment></comment></comment><comment><USER40> Great article. Great articulation of history and just enough technical detail for regular readers.

</comment><comment><USER41> Is this serious scientific writing?

"[...] the gravitational force the Earth exerts on you is canceled out in a freely falling elevator" and "[...] it is impossible to distinguish acceleration from gravity"? Seriously?

Isn't acceleration the result of force? Isn't gravity a force? When you are in free fall you accelerate, gravity doesn't "cancel out"!

<comment><USER7> Gravity is not a force. It's just tensor warping, which manifests as acceleration in our paltry 3d realm, which you experience as a force.

Similarly in the falling lift there is no force making you float, just an _apparent_ _relative_ acceleration that you experience as a force.

</comment></comment><comment><USER42> wtf. forgotten by whom? What mystery? > everything is magnetism. > inertia is where no force exists.

[https://arxiv.org/abs/1504.00333](https://arxiv.org/abs/1504.00333) [https://www.google.com/search?tbo=p&tbm=pts&hl=en&q=ininvent...](https://www.google.com/search?tbo=p&tbm=pts&hl=en&q=ininventor:%22Mehran+Keshe+Tavakoli%22) [http://www.ru.nl/hfml/research/levitation/diamagnetic/](http://www.ru.nl/hfml/research/levitation/diamagnetic/) [https://www.youtube.com/watch?v=9EPlyiW- xGI&t=684s](https://www.youtube.com/watch?v=9EPlyiW-xGI&t=684s) (guy from CERN) etc. etc.

if u want to look at universe, look at magnetism, dielectricity and inertia. many research is being done on this and practical applications have already been made in several areas of science / technoloy.

Think people should get rid of relativity, as it's completly made to assume something is not moving just for the sake of being able to compute things... everything is moving ,everything is in constant flux.</comment>


Foiling Electronic Snoops in Email - <AUTHOR> http://www.nytimes.com/2015/11/19/technology/personaltech/foiling-electronic-snoops-in-email.html <comment><USER2> > A basic method for thwarting some email trackers involves disabling emails > from automatically loading images, including invisible tracking pixels. But > that doesn't defeat all trackers, which are also hiding in other places like > fonts and web links.

Anyone know what the author was referring to here when saying "fonts"? My impression was disabling images and not clicking links made it impossible to track the opening of an email.

<comment><USER3> I believe he was referring to web fonts [1], which, like images, can be configured to be downloaded from the sender's server, thus informing them that you opened the e-mail.

[1] [http://www.html5rocks.com/en/tutorials/webfonts/quick/](http://www.html5rocks.com/en/tutorials/webfonts/quick/)

</comment></comment><comment><USER4> We nerds know that the "Load Remote Content" button (or whatever it's called in your MUA) basically means "call in the creeps," but that takes a certain amount of tech savvy. Now we get to try to explain to grandma why reading an e-mail might break her computer and steal her credit cards. It's a bummer that email got infested with the Web (2.0?) virus.

</comment><comment><USER5> That's what you get for thinking it was a good idea to render html in email. Seriously. What did they expect?

</comment><comment><USER6> I'm using mutt and wish them all good luck.</comment>


My app failed and makes no money - <AUTHOR> https://www.shoestring.com.au/2013/06/my-app-failed-and-makes-no-money/

<comment><USER2> Sorry to hear about your app failing. However, a link to the app on iTunes in your post might help a bit :)

I would love to hear/read what your thoughts on your user acquisition strategy. Did you get it reviewed by sites? Was there anything built in to share the game (not multi-playing features, but a way to get others/friends to play)?

<comment><USER3> [https://itunes.apple.com/au/app/gravityicons/id534926366?mt=...](https://itunes.apple.com/au/app/gravityicons/id534926366?mt=8)

Over the years, I have tried most (free/cheap) avenues to help market my apps. In general, I market them through PR (I know this is not a sustainable strategy despite my arguably successful track record with it). As with many 'rookie developers', I thought this app would be the next Angry Birds and little promotion would be needed for it to take off. Additionally, I didn't attempt to get PR for this app because in my eyes, it would be difficult to pitch to the media and for every media pitch that doesn't go ahead, I see this as slowly breaking away a relationship built with journalists, reporters etc.

I did try to get the icon owners (eg. Temple Run developer etc) to post on their Facebook pages etc about the app but only a few did, and the ones that did, didn't have tens of thousands of 'likes' or anything like that, unfortunately.

I added in an alert to share the game after beating one of the bonus levels (I forgot which one but I think it is around 25/30). I should probably put it earlier but in general, people close those alerts anyway without an incentive to share the app. Overall, I have made quite a number of mistakes with this app. I have learnt from them and I am moving on.

<comment><USER2> Thanks for sharing.

While I'm not a game developer, I have been trying to get our team members to focus not just on building the product/app but also on thinking about developing a user acquisition process for each app. This may sometimes involve PR and talking to the media and app review sites, but my experience (which matches your thoughts) media exposure doesn't always result in an actual boost of registrations/downloads/revenue. So it's not just a goal of "get more customers" but making it more specific, e.g. "get more people to share my game/app" or "increase exposure to a specific target interest group", etc.

Thanks again for sharing. Best of luck with your future projects!</comment></comment></comment>


U2's new album is showing up on your iPhone whether you want it or not - <AUTHOR> http://arstechnica.com/apple/2014/09/u2s-new-album-is-showing-up-on-your-iphone-whether-you-want-it-or-not/

<comment><USER2> Cool! Apple wants to do secret santa album trades!

If you were lucky enough to get the free album, please show your appreciation this week and give Apple a mix tape/cd!

Simply, go to your local Apple Store and hide a cool mix tape in the store for Apple to find and enjoy! Maybe slip one in between the $300 usb hard drives, or discreetly place a mix of your favorite 90's groups under a shiny MacBook Pro!

Apple is really opening up the world to sharing. Let's share with Apple our love of music too!

</comment><comment><USER3> Great. There goes presenting my iTunes library as a proxy for my cool-ness.</comment>