A book from Alan Turing and a mysterious piece of paper - <AUTHOR> https://blog.stephenwolfram.com/2019/08/a-book-from-alan-turing-and-a-mysterious-piece-of-paper/ <comment><USER3> When I was studying quantum mechanics, I quite often went to this book for a very different perspective on a lot of the details. I found it to be exceptionally well written and had a seemingly different approach from the typical college or graduate level quantum mechanics textbook. We had a copy in one of our department libraries, if you can get your hands on one, I recommend giving it a read when you want a new perspective on an academic quantum mechanics concept :)

I am far enough away from that part of my life, I apologize for not being able to give a more detailed and convincing testimonial for this book.

<comment><USER4> Indeed. Not only can one get a glance of a unique perspective of one of the founding fathers, but also a lot of important facts not covered in many other textbooks. One of such facts are the low heat capacities of atoms that do not fit _any_ classical theory. This fact alone is able to kill most of the "alternative" interpretations of quantum mechanics that the popular media sell-off as "science" nowadays.

<comment><USER5> Where can I read more about this?

<comment><USER6> I believe you should be able to read about it in the aforementioned book

<comment><USER7> [https://archive.org/details/1quantumMechanicsByPamDirac](https://archive.org/details/1quantumMechanicsByPamDirac)

I don't know where to start looking, but there's the book (in the original English) for any interested.

Edit: a better scan, of the 1st ed: [https://archive.org/details/in.ernet.dli.2015.177580](https://archive.org/details/in.ernet.dli.2015.177580)

</comment></comment></comment></comment></comment><comment><USER8> It took a while to get to, but I liked this part:

 _In modern times, the Y combinator has been made famous by the Y Combinator startup accelerator, named that way by Paul Graham (who had been a longtime enthusiast of functional programming and the LISP programming language—and had written an early web store using it) because (as he once told me) "nobody understands the Y combinator". (Needless to say, Y Combinator is all about avoiding having companies go to fixed points…)_

</comment><comment><USER9> If you're in London and in any way interested in computing history, you owe it to yourself to visit Bletchley Park. It's a fantastic day visit from London. (About an hour away or so via the railway, as I remember it.)

There's a direct train from Paddington, iirc. UK people please fill in.

<comment><USER10> What will you find at Bletchley Park?

<comment><USER9> [https://bletchleypark.org.uk/](https://bletchleypark.org.uk/)

An on-site museum of the WW2 Enigma code breaking activities, where they happened. This is where Alan Turing worked. Live demonstrations of the 1940s eras computer "bombes".

But, perhaps, most of all:

A chance to visit a historic site.. the activities there could very well have decided the outcome of WW2.

There's also a neat live retrocomputing display of early home computers. And it also happens to be a very lovely area to hang around in - nice buildings, park areas, ponds etc.

<comment><USER10> Well, you can see an original Enigma machine at Churchill's war room, with a nice quiz about the facts that the allies pretended they didn't know about. The Science Museum also has nice displays about Alan Turing work. Some time ago they hosted the exposition Code Breaker: [https://www.sciencemuseum.org.uk/what-was- on/codebreaker](https://www.sciencemuseum.org.uk/what-was-on/codebreaker)

<comment><USER11> The Science museum is a sad picture of extreme neglect and bad ideas these days. Just about every museum I've been to in the UK does it better, whether regional ones or national, even the smaller ones. Manchester Museum of Science and Industry, Bletcheley, Royal Arms Leeds, etc.

Bletcheley has a far, far better discussion about Turing and his influence, and far better displays of the Code Breaking work, along with the associated machines.

I last went to the Science Museum about 5 years ago and all the precision models were gone - some of which were so clever and detailed they should have been exhibits in their own right. Just a couple of hints that they once had extreme skill in model making are left. A good chunk of the multimedia and electronic displays and "experiences" were dysfunctional in some way, and a lot of the classic topics had exhibits that appeared simply worn out. The basement "scientific art exhibition" was about 5 token exhibits in a space the size of a football field, and a few dozen people finding somewhere quiet to sit and eat their sandwiches. The top floor (I think) was the for children interactive, sponsored experience. More was broken than not. The cafe with eye-watering prices seemed the most recent and best maintained exhibit.

I was so disappointed - so were the people we took, for whose benefit we made the trip at all. Manchester MSI is _far_ better at being a science museum nowadays. Have to start to wonder if my extreme love of the place in the 60s-90s stems as much from nostalgia and rose-tinted specs. It's deeply sad, and should be criminal, that it's been allowed to decline that far - it was once a world renowned national asset.

<comment><USER12> I agree that many parts of the Science Museum now look neglected and shabby, but the museum does have some truly exceptional exhibits - an original prototype Analytical Engine, a working replica Difference Engine, an Apple I, a Cray 1a, a Daniels Space Traveler and much more besides.

I have to admit a deep sadness at the recent closure of the old Wellcome collection on the fourth and fifth floor; this gallery had been left largely unchanged in several decades, but it had a powerfully evocative atmosphere. It was nearly always empty (hence the understandable decision to close it) and was poorly signposted from the rest of the museum, so it felt almost like urban exploration, creeping through a once-cherished but now abandoned site. By the passage of time, it had become a sort of meta-museum, presenting a historical perspective on the history of medicine. The galleries have been preserved for posterity by Google, but pictures can't really capture the feeling of stepping into a museum that is itself a museum exhibit.

[https://artsandculture.google.com/streetview/science- museum-...](https://artsandculture.google.com/streetview/science-museum- level-4/wwHAkiSEwLyjtA)

<comment><USER11> I think so much of it reflects its decades as increasingly underfunded state asset, in an era when having a state asset at all is almost unacceptable.

I imagine budget for proper replacement displays, modelling, maintenance and restoration is far harder than it used to be... Some of those exceptionals, both known and lesser known in storage, deserve far more than they now often get.

> recent closure of the old Wellcome collection ... powerfully evocative > atmosphere

Ugh. That hard to define atmosphere is the part that seems to being modernised away, and a good part of what I increasingly miss. Whether it's too many "clean" experiences with acres of empty space and a few exhibits spotted around, or the changing nature of the interactive models I'm not sure. Certainly I think a lot of the screen based stuff would be better as interactive experience on the website than in the building, though when it's additional to other means, it can often work.

I wish a lot more of how they managed was additive rather than replacing great swathes with a whole new design. Most, though not all, of the new plastic and electronic approaches seem far poorer in terms of lasting, and often less engaging.

The parts I often enjoy most are the esoteric, failed but promising ideas, and the day-to-day that we forgot. So I like the odd little packed displays of thirties electricals, analogue computers,

> By the passage of time, it had become a sort of meta-museum

This is one unexplored area they could do so much more with. Beautiful teak and brass cabinets with a perfect cutaway replica of a steam turbine or whole power station might not be the modern way to do it, but they were lasting and beautiful of themselves. 8 or 10 year old me couldn't leave the place until I'd turned every handle. :)

I'm sure there's scope for a huge, and fascinating self-referential meta- museum of presenting museum science, model making and all the other back room activities through the ages. Include some of the long forgotten exhibits that included the scent of machine oil, carbon electrical brushes, the metallic bite of a little ozone and sprinkling of burnt dust - like all machinery used to come with. Oh, and a selection of those ancient models the kids can try, and fail, to break by winding too fast.

Maybe we need a museum of the museum - maybe that's V&A's territory. :)

I just hope that now Manchester Science and Industry are under the same group it brings the London Science Museum _up,_ rather than Manchester down.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> SW has a tendency to describe features of a person which I find utterly fascinating (for eg: 'Turing used to giggle a lot', now compare that with the somber depiction of Turing in 'The Imitation Game'). In the write up on Ramanujam, SW mentions that he was stocky, apart from many personal tidbits.

<comment><USER14> You should read Andrew Hodges work "Alan Turing: The Enigma" on which "The Imitation Game" is allegedly partly based.

The contrasts are striking.

</comment></comment><comment><USER15> > But all this came to an end on June 7, 1954, when Turing suddenly died. (My > own guess is that it was not suicide, but that's a different story.)

Interesting tidbit there.

<comment><USER16> it's an openly debated topic, ranging from a simple accident to bullying by the state and other conspiracy theories.

[https://en.wikipedia.org/wiki/Alan_Turing#Death](https://en.wikipedia.org/wiki/Alan_Turing#Death)

<comment><USER17> "Bullying by the state" is not a conspiracy theory. He was actually, objectively punished by the state in a manner that is considered cruel and inhumane by modern standards.

<comment><USER18> I agree in principle with your objection, but I'm having trouble re- formulating the sentence in a way which is accurate but still sounds natural:

> it's an openly debated topic, ranging from a simple accident to bullying by > the state and conspiracy theories.

> it's an openly debated topic, ranging from a simple accident to bullying by > the state or other kinds of conspiracy theories.

How would you say it?

<comment><USER19> The sentence is a train wreck to begin with. "Conspiracy theory" isn't a potential cause of death, and these things do not really form a coherent range. Presumably the conspiracy theories allege murder? In that case, I might write something like: "Turing's death is still an openly debated topic, with purported causes of death including simple accident, suicide resulting from bullying by the state, and even murder at the hands of a conspiracy."

</comment></comment></comment></comment></comment><comment><USER20> If you follow the link to the obituary for Nicholas Kermack in the Eton Chronicle, then turn to the next page, you will see that at the time it was edited by Roger Clarke, who went on to be a film reviewer for The Independent, and also someone called Boris Johnson.

</comment><comment><USER21> He mentioned that Cambridge switched to four digit phone numbers in 1939. Where can one find out such things like that, where did they record and document it as a fact? I wonder if they still had manual operators or was that automatic switching?

the link: [1] the first automatic switch was introduced in 1922; so they had the fascinating problem of interoperation between manual switched regions and automatic ones. So that Oxford might have had it either way.

[1] [https://www.btplc.com/Thegroup/BTsHistory/1912to1968/1922.ht...](https://www.btplc.com/Thegroup/BTsHistory/1912to1968/1922.htm)

</comment><comment> d--b It's nice to be Stephen Wolfram, people call you up to give you books owned by Alan Turing...

</comment><comment><USER22> I had no idea that Olivia Newton-John's grandfather was Max Born of the Born interpretation...

</comment><comment><USER23> "My own guess is that it was not suicide, but that's a different story." What was this about, I wonder?

<comment><USER24> Turing was gay and knew a lot of government secrets at a time when gay people were considered security risks and likely Communist sympathizers.

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

I'm not an expert on the topic at all, but the story always seemed fishy to me. Who kills themself by injecting an apple with poison and eating an apple?

(The JFK story also seems fishy to me because I don't get why in the world Jack Ruby killed Oswald)

<comment><USER25> Ruby was under the delusion that the world would forgive him for it because everyone hated Oswald so much for having offed JFK. And, that he would be labeled a national hero.

</comment></comment></comment><comment><USER26> My goodness what an incredible journey!

</comment><comment><USER27> A real shame that Wolfram gives credence to "handwriting analysis" pseudoscience in what is otherwise an interesting piece.

> "The writing style is entirely different. Personality-wise, the writer of > sample B has a quicker, more intuitive thinking style than the one of sample > A."

How can anybody of Wolfram's intelligence unquestioningly accept this nonsense?

<comment><USER28> Because handwriting analysts tell people they are an accepted branch of psychology and there is not enough time in the day to question everything. At some point, I heard handwriting analysis was pseudoscience, so I looked into it and they were right. I've not looked into whether quantum physics is pseudoscience because the people in my life who appear to be experts in the subject tell me it's real and I don't feel like pursuing a physics degree to tell if they're full of it. Regardless of the perception you have of yourself as a critical thinker, for most things we accept thinds as true by default and only flag certain suspicious things for further criticism.

<comment><USER29> my magic 8 ball says "Insightful"

</comment></comment></comment><comment><USER30> I know SW is famous for his arrogance/egotism, but it still kills me how he always discusses everything in terms of Mathematica's programming language, instead of mathematical notation or pseudo-code. It's like giving a linguistics lecture using the made-up language you invented with your twin.

<comment><USER31> I don't think your criticism is very accurate here. Wolfram Language code doesn't show up until the second half of the (very long) article, in the sections where he is explaining how to represent the mathematical concepts in the Wolfram Language. In fact, in several cases he mentions the traditional mathematical notation and follows it with the Wolfram Language notation. What's strange or arrogant or egotistical about this? Yes, he's the founder and CEO of the company that created the language, but that doesn't strike me as a problem. It's a good language for doing this sort of thing, and it's pretty clear that he's genuinely interested in both the mathematical concepts and how to create a programming language to represent them. This is hardly just content marketing blogspam.

<comment><USER11> Every single piece Wolfram writes, without exception, is arrogant content marketing blogspam. Even his books. Sometimes very clever, sometimes interesting (though I'd find him 1,000x more interesting if say 1 article in 10 made no mention of how clever he and Mathematica are); _always_ arrogant and self-promotional. This piece is no exception - because it's Turing I made exception to my usual personal hard-ban on reading Wolfram. It's no exception to the above. It is, however, interesting despite being arrogant and self- promotional.

If you asked Stephen Wolfram what time it was, he would be arrogant and self- promotional, and mention Mathematica at least as much as the time.

<comment><USER31> It's definitely self-promotion, but I don't see why this is a bad thing. He's clearly spent a large portion of his life developing a programming and computing environment to handle mathematics (and other things). What is he supposed to do? Write a blog post about something he's interested in, without using the programming language he has intentionally developed to deal with the things he's interested in?

<comment><USER32> Mathematical notation.

When in Rome, do what the Romans do. Given his previous career as a particle physicist I doubt he has any issues with it

</comment></comment></comment></comment></comment><comment><USER33> My unpopular opinion is that Stephen Wolfram doesn't get enough credit. Yes, he has a large ego, but he remains one of the most remarkable people in science today.

<comment><USER34> Can you state in a few lines what you think he should get more credit for?

He's an interesting guy, a good businessman, and I enjoy reading his anecdotes, but I kinda figure he gets about the right amount of credit for his achievements.

If you mean "new kind of science" for example -I think he got about what he deserved on that.

<comment><USER35> You shouldn't judge the value of conjectures until you know whether they're true or not. Right now, we have no computable model for physics. NKS conjectures that some particular types of CA could compute our universe. If this turns out to be true, it'll be huge.

<comment><USER34> I dunno, I think it's pretty easy to judge the value of not easily testable wacky conjectures. I don't think much of Penrose's idea that brains are quantum gravitic computers either, and that is vastly more close to being testable, and Penrose's achievements and track record _in actual science_ are also vastly more impressive.

Putting that aside; computer guys seem to think "computability" is important in physics. I don't. The strong Church Turing thesis is an ideological idea, not a physical one. In fact, it is an ideological idea with very little evidence in its favor either in computer science or in the world of matter.

<comment><USER35> The conjecture that our universe is isomorphic to a CA is absolutely testable. When we find a CA that behaves just like the universe, we'll know it's true. If we find a completely different way of computing it that doesn't map to a CA, we'll know it's false.

Computable physics would be extremely useful. Even with coarse approximations you can only integrate the Schrödinger equation among hundreds of particles. So you can't do accurate computational biochemistry except maybe one small molecule at a time.

<comment><USER36> > If we find a completely different way of computing it that doesn't map to a > CA, we'll know it's false.

This is wrong. You would have to additionally prove that the other thing is the only alternative.

Also, CA is not testable in the sense that the theory of relativity is testable. The latter makes measurable predictions that can be satisfied, the former does not. I can imagine any model - unicorns and fairies included - <USER2> say that is behaves like the universe. The only way to falsify my claim is to empirically contradict one of my claims. NKS does not put forth such claims. Not the kind you would build a new CERN for.

<comment><USER35> A CA model of physics would certainly make measurable predictions, probably including some surprising ones that would suggest experiments to confirm them.

<comment><USER36> Where do you take your certainess from? If even Stephen Wolfram could not produce such predictions, then I doubt anyone else could. In all likelyhood, it is just not a good physical model.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER37> Some folks here enjoy reading it but Wolfman is often out of line when putting his comments and twists in. It also displays a creepy nature of wolfman to want to know very personal things.

Example, recording private phone calls and releasing them to the public or releasing those to lawyers when he feels they might serve his purpose.

Creepy and borderline dangerous. But for the average Joe all this seems to be enjoyable.

<comment><USER38> Please stop.</comment></comment>


Build your own Buffer App service – a weekend hack - <AUTHOR> http://farhan.org/building-your-own-buffer-app.html <comment><USER2> There is also [http://circular.io/](http://circular.io/)

<comment><AUTHOR> Oh cool! Did not know about this.

</comment></comment><comment><USER3> Nice idea. But if you're already using IFTTT, check out this recipe which can schedule a tweet via Google Calendar:

[https://ifttt.com/recipes/18890-schedule-tweets-using- google...](https://ifttt.com/recipes/18890-schedule-tweets-using-google- calendar)

</comment><comment><AUTHOR> OP here -- happy to answer anything that's not clear in the post!

</comment><comment><USER4> Nicely done.

Any thoughts on doing a browser-level extension to bypass the email step?

I do love the data retention of this though.

This is why programming is fun - you can make things that are quite literally worth money for your own self.

<comment><AUTHOR> I haven't looked into it yet, but it shouldn't be too hard. If nothing more, it could be a simple wrapper over the existing email protocol.

You're spot on about why coding is fun!

Edit: thanks, btw!

</comment></comment><comment><USER5> Way to show off on your side project :)

<comment><USER6> By presenting it as a tutorial? Absolutely.</comment></comment>


Mixpanel alternative - <AUTHOR> mixpanel, amplitude are expensive for startups. their basic plans are not enough at all. As second-time startup founders, we tried to come up with our own analytic solution. If anyone is interested, please send a request. http://www.actiongraphs.com/ <comment><AUTHOR> anyone interest?</comment>


Ask HN: How do you log application events? - <AUTHOR> We are currently inserting our logs in an sql database, with timestamp, logType, userId, userAgent and description columns. It makes it trivial for us to debug any event by just querying the db. However, after three and a half years of continued use, the table is now way too large.<p>How do you guys log application events in such a way that extracting information from it is easy, but still keep the size of the logs manageable? <comment><USER4> Ehm, the contrast between my answer and everyone else's here makes me feel surprisingly greybearded, but...

Application logging has been a solved problem for decades now. syslog or direct-to-disk in a reasonable format, let logrotate do the job it's faithfully done for years and let the gzipped old files get picked up by the offsite backups that you're surely running, and use the standard collection of tools for mining text files: grep, cut, tail, etc.

I'm a little weirded out that "my logs are too big" is still a thing, and that the most common answer to this is "glue even more complexity together".

<comment><USER5> That's great if you have only one server, not so much if you want to search across many apps and servers at once. We use ELK, works fairly nicely.

<comment><USER4> Fair enough, I haven't had to deal with complex multi-server application logging.

<comment><USER6> Your way still works. Syslog can ship over the network since forever.

It's a security pattern to have the logs shipped to another host in production anyway.

<comment><USER4> I did seriously consider suggesting that (it would be my default approach) but since I don't actually have any experience with big complex multi-server applications, I decided to keep my mouth shut.

There might be a good reason why they don't do it that way and I wouldn't have a clue.

</comment></comment></comment></comment></comment><comment><USER7> Log analytics is a big topic so I'll hit the main points. The approach you take to logging depends on the analysis you want to do after the log event has been recorded. The value of the logs diminishes rapidly as the age of the events get older. Most places want to keep the logs hot for a period ranging from a day to week. After that,the logs are compressed using gzip or Google snappy compression. Even though they are in a compressed form they should still be searchable.

The most commont logging formats I've come across in production environments are:

1.log4j(java) or nlog(.NET)

2.json

3.syslog

Tools that I've used to search ,visualize and analyse log data have been:

1.Elasticsearch, Logstash and Kibana (ELK) stack

2.splunk (commercial)

3.Logscape (commercial)

Changes to the fields representing your data with the database approach is expensive because you are locked in by the schema. The database schema will never fully represent your full understanding of the data. With the tools I've mentioned above you have the option to extract ad-hoc fields at runtime.

Hope this helps.

<comment><USER8> We're currently evaluating options, but for .NET Serilog is shaping up extremely nicely, and Seq/Logg.ly as log sinks are nice...

Seq is great because you can set up your own instance very near to your servers for low-latency/high-bandwidth logging, which really changes the game in terms of what you can feasibly (perf/financially) log. It also has some decent visualization options, and it's got some great integrations, with a decent plugin architecture to create your own real-time log processing code.

Logg.ly has some amazing GUI/search options.

<comment><USER9> Are you able to use Serilog for metrics in addition to application events? I'm thinking something like average time for a method to execute, things like that. And if so, what tools do you use to comb through that data (to determine average execution times, for example).

Right now at work everyone just logs to a single CSV with an inconsistent format and it makes me cringe every time I look at it. It's also really difficult to parse.

<comment><USER10> I recently used the SerilogMetrics [1] NuGet package to determine the elapsed time between method calls. Worked great, although I couldn't figure out how to use my standard logging config that is carried in the static logging object and had to redefine the seq server I wanted those lines logged to in the class itself. This may have just been unfamiliarity on my part.

Your current way does sound like a headache. If your logging lines are in the standard NLog format, you should be able to drop in serilog without many changes.

[1] [https://github.com/serilog-metrics/serilog- metrics](https://github.com/serilog-metrics/serilog-metrics)

</comment></comment></comment></comment><comment><USER11> Do you really need to debug events from 3 and half years ago? Full logs only really need to stick around as long as you're likely to want to debug them. Log rotation is a must (I've seen debug logs nobody reads sitting in the gigabytes ...) Past that, you can cherry pick and store metadata about the events (e.g. X hits from userAgent Y on this day) with enough information you'll need to do trend analysis, although it's generally a good idea to keep backups of old full logs in case you need to reload the logs to find out that one thing you forgot to add to your metadata ... If you do genuinely need all of the data back that far, you should look at partitioning the data so you're not indexing over millions of rows - how you do that depends how you're intending on using the data.

<comment><USER12> If the table is too large, make it smaller by moving some of the data to a colder, slower, store. Whether that's json documents or text file gzips on 6x USB drives, data retention is mostly cheap.

The question is, what information do you want available within the second about logs from a year ago? Aggregate that, and move the rest.

</comment></comment><comment><USER13> Elasticsearch is amazing. It lives up to the hype. It's perfect for rolling over logs, and they have lots of documentation on how to make it work just right.

Just as an example of how awesome Elasticsearch is, you can trivially segment your storage tiers (say, SSD versus HDD) and then easily move older data to other storage, with a single command.

They have a log-specific handler called Logstash, and a dashboard system called Kibana (which is sorta neat but the UI seems a big laggy in my brief experience). Apparently some folks use Logstash/Elasticsearch to record millions and millions of events per day and ES does a great job.

If you want hosted, check out Stackify. I'm totally blown away with the product (no affiliation other than being a new user). You can send log info to them and they'll sort it all out, similar to Splunk, but not ridiculously priced and no dealing with terrible sales teams. But it gets better - <USER2> offer all sorts of ways to define app-specific data and metrics, so you can get KPIs and dashboards just adding a line or two of code here and there. It's a lot easier than running your own system, and it looks like it can make ops a ton easier.

Another hosted service is SumoLogic. I only used them for logging, but it seemed to work well enough.

<comment><USER14> Wow. Stackify looks really good.

At my current employer, we are currently implementing Splunk. And it's taking forever and they do charge arm and a leg for their offering. I don't mind if a good product costs money but you shouldn't need a consultant on premise just to configure your logging solution.

<comment><USER15> I manage a 2.5 TB/day Splunk cluster at my current employer and can offer a few tips for making Splunk less painful to manage:

\- Make frequent visits to answers.splunk.com. It has a very active community, and I've frequently been able to type "how do I do X in Splunk" into Google and found multiple answers on Splunk Answers.

\- Deployment Server. Make friends with it. In a perfect world, it should hold your configurations for all Indexers, Heavy Forwarders, and Forwarders. If you're having to populate $SPLUNK_HOME/etc/system/local/ yourself, you're doing it wrong.

\- Make friends with the "splunk btool config_file_name list --debug" command. That makes it dead simple to know which configuration options a Splunk install is running. Append "| grep -v system/default" on the end of that command to filter out the defaults and you'll more easily see which of your options are being used.

\- If you have the cash, attend Splunk Conf and load your schedule up with presentations. It's worth every penny.

Hope that helps.

<comment><USER16> Second that.

We use Splunk for logging and I wrote custom app for fraud detection in financial security field, custom events correlation and alerting.

It's very good tool for enterprise data analytics as well as for any custom dashboarding and event processing.

</comment></comment></comment></comment><comment><USER17> Hi,

I used graphite and now I'm using influxdb, in the other hand kibana+logstash+ES.

With statsd and influxdb you can measure all the events in a database, it's pretty easy and you have statsd libraries in some languages. I measure all the events in my products, from response timings, database queries, logins, sign- ups, calls, all go to statsd.

Logs are good to debug, but if you want to measure all events in your platform, statsd+influxdb+grafana are your best friends, and your manages will be happy with that ;-)

A few weeks ago I gave a talk about this, you can see the slides here + a few examples+ deploy in docker:

[http://acalustra.com/statsd-talk-at-python-vigo- meetup.html](http://acalustra.com/statsd-talk-at-python-vigo-meetup.html)

Regards ;-)

<comment><USER18> Do you use Logstash to push to statsd for software that don't support statsd?

I have a HAProxy instance I want to log into something like influxdb.

<comment><USER19> You can quite easily do that with Mozilla Heka [1] and a bit of Lua scripting. Recently a haproxy log decoder was posted here - [https://gist.github.com/victorcoder/4b9bea9ade7671fcea75](https://gist.github.com/victorcoder/4b9bea9ade7671fcea75)

So in Heka set up an input (LogStreamer for example), and use that haproxy decoder script (as SandboxDecoder) with it. After that pass it through any filters you'd like (like StatFilter) and output collected stats with HTTP output + influxdb encoder.

(I just built a log parsing and stats collecting pipeline for our Heroku apps with haproxy + heka + influxdb + grafana. So far happy with the result.)

[1] [https://hekad.readthedocs.org/](https://hekad.readthedocs.org/)

</comment></comment></comment><comment><USER20> At the place where I work we use a couple of different tools for logging events:

Logstash + graylog / elasticsearch - mostly for monitoring application error logs and easy ad hoc querying and debugging.

statsd+graphite+ nagios/pagerduty - general monitoring/alerting and performance stats

zeromq (in the process of changing now to kafka) + storm and redis for real time events analytics dashboards. We are also writing it to hdfs and running batch jobs over the data for more in depth processing.

We also have a legacy sql server in which we save events / logs which is still maintained so maybe this could help you. Just FYI we analyse more than 500 million records / day and we had to do some optimisations there:

-if the database allows then partition the table by date. -create different tables for different applications and / or different events -1 table / day which is then at the start of the new day getting merged in a different monthly table in a separate read only database. -create daily summary tables which are used for analytics -if you actually need to query all the data then use union on the monthly tables or the summary tables -I want to also say this, I know it's a given but if you have large amounts of data batch and then use bulk inserts..

I suggest you take a couple of steps back and think hard about exactly how you want to access and query the data and think what the best tool for you in the long run is.

</comment><comment><USER21> Why do you feel the log is way too large?

If log entries take up too much disk space, switching to a different system will not help; you will have to do something with the data. You can either archive old years (export in some way, compress, put in cold storage) or throw them away, either partially or fully (do you need to keep debug logging around forever?). Using partitions can help here, as it makes it faster to drop older data ([http://www.postgresql.org/docs/current/interactive/ddl- parti...](http://www.postgresql.org/docs/current/interactive/ddl- partitioning.html))

You also may consider compressing some fields inside the database (did you normalize logType and userAgent or are they strings? Can your database compress descriptions?), but that may affect logging performance (that's a _may_. There's extra work to do, but less data to write)

If, on the other hand, indexes take up too much space or querying gets too slow, consider using a partial index ([http://en.m.wikipedia.org/wiki/Partial_index](http://en.m.wikipedia.org/wiki/Partial_index)). You won't be able to efficiently query older data, but if you do that only rarely, that may be sufficient.

</comment><comment><USER22> Here is another solution that hasn't been mentioned yet, but has by far the best price/performance if it matches your use-case. Google BigQuery isn't advertised as being for log search, but in practice it works phenomenally well. It provides exceptionally low storage costs, combined with a powerful query language and reasonable query costs. The counter-intuitive part is that the query performance, even on tens or hundreds of gigabytes of data is amazing, and better in practice than many purpose built inverted index log search systems.

If you want to use your logs for troubleshooting (e.g. ad-hoc queries to find error messages) or ad-hoc analytics it is ideal. Hundreds of gigabytes can be searched or analyzed in 5-6 seconds per query.

Fluentd can be used to collect log data and send to BigQuery.

<comment><USER23> Second the BigQuery suggestion for log collection and search. Also Apache Flume is another option to source logs from apps and send to different sinks.

</comment></comment><comment><USER24> ElasticSearch + Logstash + Kibana.

Custom NLog renderer which implements SysLog protocol and NLog target which pushes logs to RabbitMQ.

<comment><USER25> We use this at my startup. There's a lot of tools that support pushing to logstash in addition, logstash can parse any on disk log file. It's very useful especially for clustered applications that span multiple servers (since a single user session should be even spread out due to load balancing).

<comment><USER26> Just wondering b/c where I work, sessions are persisted to a single host (there's load balancing but cookie based persistence through Citrix netscalars). Admittedly it's not great b/c if that host goes down, user session is lost, but it does simplify matter a bit.

Do you persist sessions in some global cache (We'd use Oracle coherence at my work, but I guess you could use redis/memcache/infinispan?). Side note...does anyone have experience with Infinispan?

<comment><USER13> Making web apps stateful by "sticky" load balancing always felt like a hack. It seems much more elegant to separate the webservers from state. No need to drain machines or anything like that. And as an added benefit, separating things makes it easier to persist sessions, so you can provide a better user experience instead of balancing RAM vs "session timed out" pages.

I might be biased, though, against all the idiotic uses of session that just tend to wreck the user experience. It's not specific to any type of technology, I suppose. Maybe it's just being stateful, overall. (Looking at my bank which can't handle multiple tabs doing transactions at once, or Lenovo which will silently corrupt the displayed pricing info if you price two machines at once, or the new Azure Portal, which manages to display the wrong data even with a single tab.)

<comment><USER27> I've always been strongly in the stateful web app camp, and I don't find anything hacky about sticky sessions:) But I think the divide between the stateless and stateful camps may come down to a combination of initial technologies used, and web application complexity.

At some point, with a complex enough application, reconstituting all of the required session data and state for each request becomes a massive performance bottleneck, and stateful sessions solve that very nicely. Most app tiers support session failover pretty nicely, and many clients I've worked with have logic where if the session doesn't exist (i.e. if their session's sticky server has crashed or been removed) then reconstitute the state based on a cookie value. Either approach gives you the best of both worlds - <USER3> performance of stateful sticky sessions, and the cluster flexibility of stateless.

But with simpler applications, with less session data/state to manage then stateless is probably fine.

<comment><USER26> Sorry if I'm misunderstanding yours or GPs point but I think GP was recommending storing app session in some 3rd party cache outside your app server tier, not having nothing stored in session at all.

But reconstructing session from cookie value would work just as well I suppose, at the tradeoff of having everything you want stored in cookie (vs storing just session ID in cookie and having that ID mapped to data in one of the aforementioned caches or other alternative)?

</comment></comment></comment></comment></comment></comment><comment><USER28> I really like Sentry ([https://github.com/getsentry/sentry](https://github.com/getsentry/sentry)) for exception tracking. It's easy to set up, supports different platforms, and looks great.

<comment><USER29> And if you want to run Sentry in production, you can use Cyclops ([https://github.com/heynemann/cyclops](https://github.com/heynemann/cyclops)) as a proxy.

</comment></comment><comment><USER30> You could also take a look at Graylog ([https://www.graylog.org/](https://www.graylog.org/)), it supports structured data in a variety of formats and can send alerts as well.

It's similar in spirit to elasticsearch + logstash + kibana, but more integrated.

Disclaimer: I work on it, so I'm not going say what's better, just giving another pointer.

</comment><comment> bra-ket 1) elasticsearch +kibana: [https://www.elastic.co/products/kibana](https://www.elastic.co/products/kibana)

2) hbase+phoenix: [http://phoenix.apache.org/](http://phoenix.apache.org/)

3) opentsdb: [http://opentsdb.net/](http://opentsdb.net/)

</comment><comment><USER31> My experience is that:

• open source solution require a lot of work

• commercial solution get very expensive very quickly

If you can narrow down how much logs you want to keep, then the commercial solutions are amazing, but as you need (or think you need) to keep them longer and longer, they become prohibitevely expensive.

The next time I have to tackle this issue, specifically keeping the log forever, I will give the hadoop stores (HBase, Impala etc...) a try. Hadoop solutions work really well for very large set of write-once only data, which is what logs are.

</comment><comment><USER32> I run services that log to plaintext files and I use logrotate to periodically gzip and rotate them out for archival.

Just use grep to query recent logs, zgrep if you have to dig a little.

<comment><USER33> zgrep works for both plain text and gzipped streams so you can do something like this (assuming you have both deflated and non-deflated files that matches the glob pattern):

        zgrep somepattern /var/log/messages*

</comment></comment><comment><USER34> We stage stuff out.

After a week, it goes out of cache. After a month, we no longer keep multiple copies around. After 3 months, we gather stats from it, and push it to some tar.xz files, which we store. So its out of the database.

We can still do processing runs over it, and do... but it is no longer indexed, so they take longer.

After 3 years, the files are deleted.

</comment><comment><USER35> My company uses pretty basic logging functionality (no third party services yet), but one thing we've done that's helpful when reading logs is adding a context id to help us track down API calls as they travel through our system - I wrote up a quick blog post about it here: [https://www.cbinsights.com/blog/error-logging-context- identi...](https://www.cbinsights.com/blog/error-logging-context-identifiers/)

</comment><comment><USER36> [https://logentries.com/](https://logentries.com/) has worked out well for us, at least at the small scale we're using it now. Pricing is reasonable.

The important feature for us is S3 archiving. They'll keep your logs online for a certain period of time, and then copy the old ones to S3. You don't have to get rid of anything, and you're still able to keep costs under control.

</comment><comment><USER37> We use elmah ([https://code.google.com/p/elmah/](https://code.google.com/p/elmah/)) for logging our ASP.NET/MVC apps.

It works well for us, nice accessible UI if you need it and a solid database behind it. Also RSS/Email alerts if you need it. We've got thousands of entries in there and even on the old SQL2005 box we use, it seems to work just fine.

</comment><comment><USER38> I'm probably the only one doing it outside a bank or hedge fund, but since kdb+ opened up their 32-bit license for free, it's been amazing working with. Log files and splayed tables are stored neatly on disk so backing up to aws nightly is a breeze. It is a great solution for high tick rate logging of homogeneous data, especially when that data needs to be highly available in business applications.

</comment><comment><USER39> You didn't specify your location, but in some counties like the Netherlands, it's not legal to store PI (personally identifiable) data that long. There is no reason to keep access logs for 3+ years. What are you ever going to do with that data?

Like others here said, extract what you want to keep (unique visitors per day or so) and throw the rest out after a few weeks.

</comment><comment><USER40> I use a logging library called Winston ([https://github.com/winstonjs/winston](https://github.com/winstonjs/winston)). I have it hooked up to Pushbullet with Winston-Pushbullet ([https://github.com/michaelmcmillan/winston- pushbullet](https://github.com/michaelmcmillan/winston-pushbullet)) so that when an unhandled exception or error is thrown I get an instant notification on my Nexus 5 and MacBook.

Winston is a node/iojs library though, but I guess you could find something equivalent in any other stack. The Pushbullet part is really useful.

Edit: I run a pretty small site however ([http://littlist.no](http://littlist.no)). I don't think I would enable the Pushbullet part if I had several hundred thousand visitors per day.

<comment><USER40> Edit: I should have known better than to post this to HN, some guy found a procedure which threw an uncaught exception. I was bombarded with push notifications (hahaha). At least I fixed a bug (-:

</comment></comment><comment><USER41> I just log to a file, rotating/deleting when/if needed

</comment><comment><USER42> We generally run them through central syslog servers or directly to a logstash tcp or udp input. One way or another all logs from around the world end up in an elasticsearch cluster where we either query for things manually or use kibana to interact with them. Works pretty well actually.

</comment><comment><USER43> > It makes it trivial for us to debug any event by just querying the db. > However, after three and a half years of continued use, the table is now way > too large.

Why are you keeping all of the logs? Are you doing anything with it?

Are the old logs relevant at all? If your program structure has changed, then anything logged before that point isn't even applicable.

My advice: If what you is working, but only failed because of volume of data, apply a retention policy and delete data older than some point in time.

An example: Nuke all data older than 1 month for starters, and if you find that you really don't use even that much (perhaps you only need 7 days to provide customer support and debug new releases) then be more aggressive and store less.

</comment><comment><USER44> Back in 2012, we talked about our foundation for this at Indeed:

Blog: [http://engineering.indeed.com/blog/2012/11/logrepo- enabling-...](http://engineering.indeed.com/blog/2012/11/logrepo-enabling- data-driven-decisions/)

Talk: [http://engineering.indeed.com/talks/logrepo-enabling-data- dr...](http://engineering.indeed.com/talks/logrepo-enabling-data-driven- decisions/)

tl; dr: a human-readable log format that uses a sortable UID and arbitrary types/fields, captured via a log4j syslog-ng adapter, and aggregated to a central server for manual access and processing

</comment><comment><USER45> Syslog + Logentries for raw logging (e.g. "User Alice created X"). New Relic APM for performance monitoring, New Relic Insights for statistics (e.g. tracking downloads, page views, API requests, etc).

</comment><comment><USER46> What kind of log data do you mean exactly? E.g. what's the granularity?

We have web server logs going 30 days back, on disk, managed by logrotate. Then we have error logging in Sentry. For user level events, we track in Analytics, but we also have our own database-backed event logging for certain events. Currently this is in the same db as everything else, but we have deliberately factored the tables such that there are no key constraints/joins across these tables and the rest of the schema, which means it should be trivial to shard it out in its own db in time.

</comment><comment><USER47> It depends on what type of data you are logging.

For performance metrics we use graphite/stats-d This allows us to log hits/access times for many things, all without state handling code inside the app.

This allows us to get rid of a lot of logs after only a few days. As we're not doing silly things like shipping verbose logs for processing.

However in your usercase this might not be appropriate. As other people have mentioned, truncing the tables and shipping out to cold storage is a good idea if you really need three years of full resolution data.

</comment><comment><USER48> Well-solved via SaaS. Logentries, Loggly, Papertrail, amongst others.

</comment><comment><USER49> > We are currently inserting our logs in an sql database, with timestamp, > logType, userId, userAgent and description columns.

That's what I would do.

> However, after three and a half years of continued use, the table is now way > too large.

Yeah, that's what happens...

There are many ways to handle this issue. The simplest is to start archiving your records ( i.e. dumping your old records into archival tables ).

Do you have access to a DBA or a data team? They should be able to help you out with this if you have special requirements.

</comment><comment><USER50> I am biased, but you should look into a logging system like splunk. You shouldn't be using an RDBMS for your logs. Your logs don't have a schema.

With splunk, you just output your logs in this format:

<timestamp> key1=value key2=value key3=value

install splunk agent on your machines, and splunk takes care of everything from there. You can search, filter, graph, create alerts etc...

Splunk indexer allows you to age your logs, and keeps the newer ones in hot buckets for fast access.

<comment> T-zex Splunk is indexing system, not a logging system.

<comment><USER50> Splunk is a log management first and foremost. It has an indexer system to index your logs of course.

Disclaimer: I work at splunk.

</comment></comment></comment><comment><USER51> Using a fast, scalable and flexible tool called Fluentd:

[http://www.fluentd.org](http://www.fluentd.org)

Here is a good presentation of Fluentd about it design and general capabilities:

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

note: it's good to mention that Fluentd have more than 300 plugins to interact with different sources and outputs.

</comment><comment><USER52> Specifically for mobile logging and remote debugging you might wanna check out Bugfender's remote logger: [http://bugfender.com/](http://bugfender.com/)

Disclosure: I'm on of the co-founders. We've a couple of other related tools in the pipeline, but the BF remote logger was the first we built, mostly to solve our own need at Mobile Jazz.

<comment><USER53> I've actually tried logentries and papertrail. For mobile, I highly recommend Bugfender.

</comment></comment><comment><USER54> ELK and others have been mentioned and are great tools, but if you want a more simple solution within the Sql realm postgresql with table partitions works well for that particular problem.

I agree with many comments that this isn't ideal, but setting up weekly/monthly partitions might buy you plenty of time to think through and implement an alternative solution.

</comment><comment><USER55> Surprised no-one has mentioned Papertrail yet - [https://papertrailapp.com/](https://papertrailapp.com/)

We use them for all our apps and have not seen any issues so far. It can be a bit tricky to set up, but once the logging works, it's hassle free from then on. Pricing is also very affordable.

<comment><USER56> We use papertrail and have been very pleased with it.

</comment></comment><comment><USER57> Rollbar has been pretty fantastic for us.

Also NewRelic if you want to spend the money (or get it throuhg Amazon/Rackspace for free)

</comment><comment><USER58> Elasticsearch, Logstash and Kibana (ELK) stack.

This is very convenient for decently complex querying and analysis at great speeds.

</comment><comment><USER59> We push data into shared memory. Then we have clients that can read the memory and present it. This makes it possible to log millions of lines per second with a very limited cost.

This has the benefit of making logging more or less asynchronous. You still need to handle the logs coming out of this, of course.

</comment><comment><USER60> If you're only looking to debug with the data, then something like Splunk ($$$) or Elasticsearch should work. However, if this is for some kind of an Analyticial/Data Scienc-y use, then you'd be better off with a format like Avro and keeping it in Hadoop/Hive.

</comment><comment><USER61> One of my java projects I use logback with a mongodb appender. This allows me to structure the logs for easy querying plus I have access to all stacktraces from all servers in one spot.

If you go this route, use a capped collection. I generally don't care about my old logs anyway.

</comment><comment><USER62> I log to redis and scrape the logs to SQL for long-term storage. Memory is fairly cheap now adays so it works out for my app.

If I had a lot of logging to do though, I'd use elasticsearch since that's what I run for my main DB. It handles sharding beautifully.

</comment><comment><USER63> I track them via the analytics event tracking API. It is really useful and full of surprises when you look at the stats:

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

</comment><comment><USER64> Piggy-backing on this topic: does anyone successfully use Amazon S3 as the log store for application event logging? The low cost is attractive, but at first glance it seems like the latency is too high for it work well.

</comment><comment><USER65> It depends on the priority and importance of events.

For instance, we use a log file for HTTP access logs but I store all of errors and warnings from MongoDB. However, I clean the log storages every month.

We use NodeJS and MongoDB in www.floatalk.com

</comment><comment><USER66> Sumo Logic ([https://www.sumologic.com/](https://www.sumologic.com/))

Works in cloud. Easy to setup and very scalable.

Free tier: 500 MB/day, 7 day retention

Disclosure: I work there.

</comment><comment><USER67> When I'm hacking something together, I log things in... Slack.

As it grows into a seemingly useable feature, I might move it to GA or Mixpanel.

When it gets to be large and stable, then it goes into syslog

</comment><comment><USER68> Could you expand on how do you use the log data ? How often do you query it, what time periods do you query, have you considered building a data warehouse for your analytics?

</comment><comment><USER69> Zabbix to monitor hardware, logstash/elasticsearch (kibana for UI) to monitor service logs, Sentry for application level logs

At least this is what we're moving to at work.

</comment><comment><USER70> Exactly that, but rotating after three years. If it's three years ago it probably doesn't matter any more.

<comment><USER71> Rotate it, but save the old ones. You never know how far into the past you have to dig one day. Be it for statistics or tracking a security issue.

</comment></comment><comment><USER72> [http://www.stacktach.com/](http://www.stacktach.com/)

</comment><comment><USER73> Fluentd + Elasticsearch.

Very easy to setup.

</comment><comment><USER74> We're using ELK stack - it's pretty nice.

</comment><comment><USER75> Text file + grep + awk

</comment><comment><USER76> Checkout segment.io

</comment><comment><USER77> Test

</comment><comment><USER78> Okay, You never log logs in DB in the first place.

You never fill table with non capped/infinitly growing records (capped = collections with an upper limit).

You use at best rotating collections (like circular buffer ring). But anyway, if you have success the log flow should always grow more than your number of customers (coupling) thus, it grows more than linearly. So the upper limit will grow too.

Tools have software complexity in retrieving, inserting and deleting. There is not a tool that can be log(n) for all cases and be ACID.

The big data fraud is about letting business handling growing set of datas that are inducing diminishing returns in OPEX.

In software theory the more data, the more resource you need that is a growing function of size of your data. Size that grows more than your customers, and linearly other time.

The more customers you have, the longer you keep them, the more they cost you. It is in terms of business stupid.

Storing ALL your logs is like being an living being that refuses to poo. It is not healthy.

Solutions lies in sampling or reducing datas after an amount of time and scheme like round robin databases.

<comment><USER79> Shit HN says candidate: "Storing ALL your logs is like being an living being that refuses to poo. It is not healthy."

That's gold.</comment></comment>


Ask HN: Where to find Artificial Intelligence/NLP early adopter customers - <AUTHOR>

Hi HN, Where can one find a set of customers/early adopters for Artificial intelligence/Natural language processing technology.
We are not looking to sell the company but looking for paying partners/customers willing to work in a SAAS model. I imagine there would be people interested in giving semantically correct answers to questions asked in natural language. <comment><USER2> Don't look for customers for your AI / NLP technology, look for customers with problems that can be solved with your AI / NLP technology and then sell them a solution to that problem.

<comment><AUTHOR> Exactly what I'm looking for. How to go about it? Where to start.

<comment><USER3> What's the simplest, most brain-dead obvious application of your skills/technology you can think of? Ideally, it should be something you can't believe anyone would pay for.

That's probably your best bet for areas to start investigating. Seriously. Smart people tend to think they have to solve hard problems, but usually (in my experience, and from watching other successful entrepreneurs like Patio11), the money's in doing stuff that you think is really easy, and other people think is hard.

</comment></comment></comment><comment><USER4> Is it a framework? or are you looking to apply ai / nlp to a particular problem

<comment><AUTHOR> Not a framework yet. For now think of it as NLP interface to your content.

</comment></comment><comment><USER5> What can your technology do ?

<comment><AUTHOR> For now, end users can achieve 2 things: 1\. Context aware, semantically correct answers to questions (based on the user's content). This is ideal for automatic virtual assistant, FAQ answering via a bot etc 2\. Context aware, semantically correct conversations (chat like) for expert systems (i.e. Natural language interface for an expert system).

I'm really excited about the accuracy I'm seeing and want to release it to some real world clients.</comment></comment>


Paid Interview Opportunity for Developers - <AUTHOR> https://docs.google.com/forms/d/e/1FAIpQLSfworhwZhm3jReGJUjcaRb1AHn6e53XMsrjOYl9sNls3DTybA/viewform <comment><AUTHOR> Jack Strategy, a design and innovation firm is looking to interview developers who work closely with marketing teams. Interviews will be 1.5 hours over Google Hangouts in mid to late July and participants will be compensated $150. Fill out this linked survey and we will be in touch!

</comment><comment><USER2> is it true?i found hardly to believe it</comment>


Join the JSConf US and JSConf EU Discussion Groups - <AUTHOR>

Join the JSConf US and JSConf EU discussion groups on Linked In to find out the latest and greatest from these two great JavaScript focused conferences. <comment><AUTHOR> JSConf US: <http://www.linkedin.com/groups?gid=1799131> More Information: <http://www.jsconf2009.com>

JSConf EU: <http://www.linkedin.com/groups?gid=2268822> More Information: <http://jsconf.eu/></comment>


A New Bike With Buzzing Handlebars That Give You Directions - <AUTHOR> http://www.wired.com/2014/07/a-slick-new-bike-with-buzzing-handlebars-that-give-you-directions/?mbid=social_twitter#slide-id-1312651

<comment><USER2> I don't see this bike solving any problems that a simple smartphone mount wouldn't. It seems short sighted to put all of the technology in something as expensive as the frame.

<comment><USER3> It's traditional "improve the bicycle" design fluff. Whenever you see integrated anything on a bike, you know the designer isn't thinking about service life or tweakability or any of the other things that makes bikes so cool.

I'd like to see haptic directions in Wear though - buzz once for left, twice for right.

<comment><USER4> You could buy two such full featured smart watches and it'd probably still be cheaper and less maintenance than building it into the bike. Actually, the dev kit for Glass could well be cheaper too.

As a bike rider, I'm not sure why these bike design things get so viral. Is it like food shows where people who don't cook watch people making impractically extravagant dishes?

</comment></comment></comment><comment><USER5> The author uses "peddle" instead of "pedal" twice, and thinks bicycles have a confusing number of levers to figure out. I think it's safe to say they don't know what they're talking about.

</comment><comment><USER6> Do people frequently ride to places they've not been before?

<comment><USER5> Sure, just like you might walk, drive, or take public transit somewhere new.

<comment><USER6> Obviously, but enough to base their bike purchase around that aspect? Most people I know who ride a lot and spend up on their bikes use them primarily for commuting (they know the route) or exercise (know the route or are riding with friends who know). Again, sample set is just those I know, but they still drive if they're heading to a meeting or event at a new location.

<comment><USER5> Well, sample size of one but I ride bikes to new locations. However, I have my phone's GPS in case I get lost. It helps a lot that the city I live in has a good bike share system and is fairly compact, so cycling is often the fastest option. I don't own a car, either, so I might not be the ideal respondent to your question.</comment></comment></comment></comment>


Ask HN: Does anyone read posts below the first 10 on the homepage of HN? - <AUTHOR> I have noticed that I very rarely read posts that are below top 10 on a homepage, I wonder how many people like me are there. <comment><USER2> I use [http://hckrnews.com/](http://hckrnews.com/) to track all front page posts.

<comment><USER3> Same, i have been using it for about 4 months, i csn pretty much catch up on all posts too, which is nice.

</comment></comment><comment><USER4> There are people (like me) who read articles on the "new" page, long before they ever get anywhere close to the front page (homepage). Otherwise, these articles would never get to the front page (since to get to the front page, they have to receive a significant number of upvotes).

</comment><comment><USER5> Not sure what most people do. I sometimes hit the new and the ask pages to see if there is some good content that I can upvote or comment on.

I recently began writing and have posted a few links to articles. I just recently found that an article that never made it to the front page of HN, accumulated only 3 points and no comments generated about 20 views of the article originating from HN.

Twenty page views from readers of HN is not "great" but it is 20 people with exposure to my thinking that I didn't have 3 days ago. I view this as a net positive.

</comment><comment><USER6> Yes, but mostly because [http://hckrnews.com/](http://hckrnews.com/) catches them for me.

</comment><comment><USER7> This post is now at number 14 on the Ask Page. This comment will be at number 24 on this post. No one will ever know it is here.

<comment><USER8> >This comment will be at number 24 on this post

I believe the HN ranking algorithm rewards recent comments, to the point where often the newest comments are at the top.

</comment></comment><comment><USER9> Seems I might be the only one confused about your wording, do you mean the top 10 articles on the front page, or top 10 comments within an article?

In answer to both questions, I do both. I usually go through the articles from #1 to ~#120, reading articles I find interesting, and usually reading all the HN comments for that article too (you can learn a ton from reading more than just the top couple of comments).

Sounds like this approach would suck up a lot of time, but HN submission topics are often pretty narrow, and my interests are somewhat narrow too, so I usually only end up reading only 4-5 HN articles or less a day.

</comment><comment><USER10> I think you're going to get a bit of sampling bias with this one.

</comment><comment><USER11> I sometimes wonder if the front page contents arrive in phases. Perhaps readers who are interested in topics that are there 'now' will become engaged and not make it to the 'new' posts to up-vote to the front page.

Readers who are not interested in what is there 'now' are likely to head to 'new' and find posts that interest them, which are likely different topics than what is on the front page 'now'.

So the topics may phase through in that manner.

'nough navel gazing. Back to work...

</comment><comment><USER12> I tend to stick mostly to the front page, but I think it's because I'm here more for the comments than the articles, usually.

The lower-ranked stuff tends to have little or no discussion.

</comment><comment><USER13> Yeah I do. Actually, I always do. Your question has brought the realization that, though not intentional, if I'm at HN its because that is the thing I have decided to do...

On that note, I have no choice but to tip my hat to HN. Way to go, you have successfully attracted a consumer to your service and then kept him there for way longer than they had consciously intended.

The Silicon Valley business model implemented successfully by the business that fuels it... damnit, now I feel like a sucker...

</comment><comment><USER14> I scan all the links on the front page, three or four times per day. I might click on 5 to 10 links per day from HN.

If I'm bored (perhaps there's nothing on the front page of interest), I check the New section. A few times per week I read through the Ask HN section. This has basically been my routine for years now.

</comment><comment><USER15> I do. I read HN almost everyday and I scroll all the way down until I get to the articles I read the previous day.

</comment><comment><USER16> I use Hooks app([http://www.gethooksapp.com/](http://www.gethooksapp.com/)) to get notified about popular posts. We can set a minimum number of upvotes(50/100/200/500) on the posts before being notified.

</comment><comment><USER17> I usually read through a couple pages worth, but I'm usually only reading the asks and shows. I'll scan the headlines of a few articles, but they're submitted from so many sources that it's hard to sort through for something I want to drill down on.

</comment><comment><USER18> I often go through many pages.

It would be great if there was an option to limit the posts by age, such that it wouldn't show posts created more than 'x' days ago - so I could still see all the recent posts, but in front-page order.

</comment><comment><USER19> Yes, but I don't usually read alot of posts total. I'll flip through a bunch of pages, opening interesting threads in a new tab. Then I look at the comments, and depending on how they look I'll read the article.

</comment><comment><USER20> If I run out of stuff on the front page, then I go to /newest

</comment><comment><USER21> Yep, I'll sometimes browse to page 3 or 4, maybe more if I'm really bored. And I routinely check the /newest page and upvote the submissions there.

</comment><comment><USER22> Yes. It's a wonderful place to go deep deep into. I usually open a bunch of stuff to read in tabs and dig and dig and dig and then read and read and read.

</comment><comment><USER23> As a newcomer with little time, I'm making use of the "search" option to stay focused and learn instead of freely surfing the flow.

</comment><comment><USER24> I believe that I do. I don't know exactly what the relationship of what I read is to the home page because I use an RSS reader.

</comment><comment><USER25> I definitely read the front page more often, but when I'm procrastinating, I can easily make it to page 5.

</comment><comment> qu4z-2 You're currently at #75 for me, and I'm replying, so...

</comment><comment><USER26> I read the top few hundred. This one is 86 at the moment.

</comment><comment><USER27> I frequently get to page 5, sometimes as far as 7 or 8.</comment>


What a relief, I have launched my MVP (thoughts from a Founder) - <AUTHOR> http://eddychan.com/post/26476615177/what-a-relief-i-have-launched-my-mvp

<comment><USER2> All the best in becoming "ramen profitable" as soon as possible.

Would love to see a post around how you're using Fabric to one-command deploy to EC2.</comment>


Show HN: Tag Along (my first iPhone app 37 days later) - <AUTHOR> http://itunes.apple.com/us/app/tag-along/id470010236

<comment><USER2> I'm interested in knowing what you found to be the best resources for building your first iOS app. Did you use anything like PhoneGap or just Xcode? I have been looking at making an iOS app and while there are lots of examples of how do specific things, I haven't found any good overviews of how to properly architect an iOS app or what if any framework to use.

<comment><USER3> Hey jamesgagan, I feel your pain. I found the same thing when I started iOS development a few years ago: plenty of tutorials on how to restyle a specific widget, but not many resources on how a real-world application should be structured as a whole.

I've got a few iOS apps under my belt and I feel like I could have something to offer in this area. Feel like Skyping for a half hour or so? I'd love to help talk through your architecture. My email is in my profile.

<comment><USER2> thanks for the offer - i may take you up on it at some point!

</comment></comment></comment><comment><AUTHOR> I built this in 37 days with no prior iOS experience (though I did have experience with ruby/rails). I think it could be useful but I'd love some feedback.

<comment><USER4> I would consider some sort of free version of this app, so people can join without risk. Maybe make a version that limits you to 3 friends for free, or unlimited friends for $1.99?

<comment><AUTHOR> Yeah, combined with the above comment, I think this is a good idea. This was actually my initial thought (but with 2 friends) early on, but I wanted to experiment with the idea of only having a paid version because I believe paid apps get more usage (I might be crazy here).

<comment><USER5> From my experience free trumps paid unless the paid app is promoted by apple/lots of blogs. You may get more return users with a paid app (since they shelled out the cash they will probably want to get their money's worth) but if you're trying to build a user base and especially if your app relies on one, which yours seems to, free is the way to go.

</comment></comment></comment></comment><comment><USER6> honest question: how will you differentiate yourself / market your app better than a group texting app?

<comment><AUTHOR> I think the big advantage here is reducing the noise and the effort. If I'm going mountain biking this afternoon it only takes me about 10 seconds to let all my mountain biking buddies know that. I don't have to figure out which group I'm sending the invitation to and explain what I'm going to do and where.

I believe simple, targeted apps can be useful.</comment></comment>


3D Printed Head Fools Android Face Recognition, iPhone X 'Impenetrable' - <AUTHOR> https://www.macrumors.com/2018/12/16/3d-printed-head-android-face-id/ <comment><USER2> Actual article: [https://www.forbes.com/sites/thomasbrewster/2018/12/13/we- br...](https://www.forbes.com/sites/thomasbrewster/2018/12/13/we-broke-into-a- bunch-of-android-phones-with-a-3d-printed-head)

Did they control for material of the fake head? Did they make it emit any kind of warmth at all? I'm just speculating but I would imagine that Apple would go through the trouble of using numerous markers from the infrared sensor FaceID uses [0].

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

</comment><comment><USER3> there were some news from China that one lady had returned her iPhone X because her colleague had unlocked it using Face ID</comment>


Why Ebooks Are Still Doing it Wrong - <AUTHOR> http://www.lunascafe.org/2011/04/typography-is-about-reading-and-so-are.html <comment><USER2> A blog post discussing this was submitted a few days ago: <http://news.ycombinator.com/item?id=3256317></comment>