Kindle experiment falls flat at Princeton - <AUTHOR> http://www.dailyprincetonian.com/2010/02/22/25262/ <comment><USER2> "Falls flat" or "some people said they didn't like it a lot"?

I would have loved the Kindle when I was in school. I remember carrying around 5 different textbooks all day, and that was not particularly fun -- especially since we didn't really ever use the whole textbook. (The $100 spent for each just added insult to injury...)

One thing I liked about textbooks was the ability to doodle in them while in class. It was a good way to pass the time in boring lectures, and is not easily replicated on the Kindle.

<comment><USER3> > especially since we didn't really ever use the whole textbook.

I saw some people at my university chopping the big textbooks up in sections and putting each in a binder. Worked wonders for the weight, but I'm not sure what it did to resale value.

</comment></comment><comment><USER4> This seems like a better model for the iPad. The kind of heavy note taking interaction means they were looking more for a PDA-ish replacement.

The Kindle is very much optimized for reading, taking some notes is definitely possible, but the quality of the interaction has been traded off with issues like battery life and cost.

The iPad however has traded a lot of battery life for a much richer interaction model which might make a lot more sense in this context.

<comment><USER5> To be honest I am not that impressed with the kindle battery life. I wonder if the wireless connection uses battery even when it's not in use.

<comment><USER4> My DX seems to. I only ever switch the wireless on when I'm getting my weekly Economist or buying a book in the store.

</comment></comment></comment><comment><USER6> I think this was a biased study -- they were used in upper-level politics classes in the Woody Woo school, which require lots of discussion about the reading itself (1300+ printed pages). Using kindles for paper-saving purposes misses the point of the device [they can save paper by having people print double-sided (or 4 pages per side) and handing out magnifying glasses ;)].

If the kindles were used for PDFs for math/engineering/cs classes, I think there'd be much better reception. You'd save the trouble of lugging around giant books, where the focus is less on the book as a source, and more on examples/understanding the material. You can't exactly plow through math papers so it's ok to have one page flip every 5 minutes. Also, PDFs are rendered page by page so you can easily jump to a certain one if needed.

I have a kindle and ebook readers are definitely not for detailed, interactive experiences. The main convenience is having dozens of books on hand that you can read or reference (but not mark up) easily.

<comment><USER7> Re: "If the kindles were used for PDFs for math/engineering/cs classes, I think there'd be much better reception."

Absolutely not. I have a K1, K2, iPhone Kindle, and read about 200-300 pages/week on them. They are great for fiction, long reading, essay reading but are absolute fails when it comes to Mathematics, technical texts, diagrams, or anything with colored illustrations.

And, don't underestimate the amount of rapid random flipping you do in a mathematics text book - bouncing around pulling up forms for integration by parts, trying to track down lemma's for proofs, etc... The kindle is _useless_ for rapid random page flipping - sequential or footnote read-n-back only (The footnote navigation is actually pretty good).

Finally - PDFs on a kindle are converted into free form text (poorly, particularly with diagrams - a page which can normally handle about 5 diagrams on paper, can only handle 2 on a kindle) - you lose the page by page rendering, except in those rare cases where you pull them over as page-images, and trust me - fast way to bring your Kindle (K1/K2) to a screeching halt - also unreadable.

I have high hopes for the iPad in this space, but time will tell. I'll be waiting in line though when it comes out.

<comment><USER8> I used to have a K2, but upgraded to a DX (or rather was gifted one). It's just barely big enough to read Academic two-column papers without making your eyes bleed, and the native PDF support works great, which is fantastic.

But regardless, the thing is still useless in a live classroom discussion environment where you need to page faster than 0.2 pages per second.

</comment></comment></comment><comment><USER9> The issue is mainly with the software. An open source platform would allow the university to tailor the software of the device to the needs of the classroom for which is was not originally designed. Also, the keyboard was prohibitively small, which would suggest that maybe the solution is laptops which are probably already owned by most students and are open platforms for software development.

<comment><USER10> There's no way each university is going to write the whole software stack for an ebook reader. Given current hardware and software, laptops are a poor substitute for hard copies of all the reading (at least in my experience). Making software that's useful enough to replace printed pages is going to take decent-sized teams years of development effort.

<comment><USER11> With the tools we have nowadays, it should take 2 or 3 about 4 months. Take a look at One Note and Inkskein. I think the Inkskein team is one guy.

<comment><USER10> Inkseine is a research project that has been in progress for years, not a shipping product. A few months? Are you joking?

This paper about it from 2007 has seven authors, guys who have spent their careers on similar technology. I can't tell if it's down to just one guy by now. <http://portal.acm.org/citation.cfm?id=1240666>

</comment></comment></comment></comment><comment><USER12> > _The inability to quickly navigate between documents and view two or more > documents at the same time also frustrated users._

On my eBook reader (not a Kindle, btw) the bookmarking is also woefully inadequate. Only six bookmarks in total, and no way to see to which document they link, or when that document was last accessed.

This is definately an area to improve eBook reading software.

</comment><comment><USER13> In order to thrive a device is going to need a stylus for highlighting and ideally the ability to recognize handwriting, if not then at least it needs to be able to save handwritten notes. Things will get far more interesting with tech that enables student collaboration.

</comment><comment><USER14> My current problems with e-readers:

1\. Power consumption. I already have numerous other gadgets needing power. Having yet another device that needs power to work means setting up yet another place for it to charge. Granted, books need more storage space, so this is balanced.

2\. Very limiting. I have numerous technology books, and often I'm flipping back and forth between two or three. I don't see being able to do this with a single device.

3\. It's a single purpose device. I already have too many devices alread (iPod and Phone), and I find that too much still. Couple that ear phones, keys, and a wallet, it's far too much stuff I need to carry around. An e-book reader would be just one more thing I'd need to carry around.

4\. Lending capabilities is non-existent. Unless the person also has an e-book reader (and here I'm making the assumption that I can even lend the book from device to device), they can't be lent the book. I've done this enough that it's actually rather important.

5\. Going beyond the lending problem, I'm not alone, and my family might want to read something as well. Current e-book readers mean needing one for every person. Throw DRM concerns on top of that, and I don't know how it could be handled. If I want to read one book, and my wife another book, and we have only one e-book reader...

6\. Cost. While an individual device isn't that expensive, you still have to buy a lot of books to make up for the difference in price. Even if you read a lot like me, not all my reading is done with books. I'm a big Audible fan, so this cuts into my time as well. But still, the device is expensive, usability is still awkward.

Side note: I've tried out Sony's e-book readers, and maybe it's just the floor models, but they seem awful, cumbersome, and something I would expect to see as an early alpha. Buttons are slow to react, touch-screen is finicky, and whats with the ugly flashing black screen every time it changes pages? God help me if I want to scroll to a certain page. End note.

Obviously both MS and Apple, amongst other manufacturers, see the potential with the tablet like devices. The magic device will solve the 'hard to read for long periods' problem, as well as the cost problem. Oddly enough, I constantly think of Star Trek and their pads they carry around. They have a lot of them, and treat them rather roughly. That's the direction I think people need to take, using those 'data pads' as a reference for how they could be used.

For some reason, I think Microsoft will get there first.

</comment><comment><USER15> I was surprised by their common complaint that the Kindle doesn't have page numbers! What were they thinking to leave out that feature?! It cripples the usefulness of the device for heavy reading over longer time spans.

<comment><USER8> They don't have page numbers per se, but they do have page ranges. Because you can change the text size, actual page numbers themselves completely change. The numbering system that the Kindle uses is based, from what I can tell, on words/sentences/paragraphs. It took me ages to figure out that "1237-48" meant "From 1237 to 1248" and not something like "1237.48". It's horribly communicated, but it makes sense when you figure it out.

<comment><USER2> Strange. This made sense to me immediately.</comment></comment></comment>


Ns_enum and Ns_options - <AUTHOR> http://nshipster.com/ns_enum-ns_options/

<comment><USER2> >Bitmasks are nicer than arrays of string constants.

Well, arrays of string constants are categorically the wrong tool for the job if you're talking about the function of a bitmask. You want a set for that, not an array. And it's not a bad idea to go ahead and use a dictionary since you can get the same functionality, and that will let you seamlessly add in non-boolean options down the line.

Except in tightly optimized code, I really think that using bitmasks is an antipattern. It's way harder to inspect a bitmask than a set or dictionary when debugging, and code dealing with them tends to be less readable. In addition, bitmasks sometimes have a tendency to encourage developers to be "clever" and do manipulations with them beyond simple &s and |s. Maintaining such code is, of course, a nightmare.

</comment><comment><USER3> I started using NS_ENUM, but I noticed that if I used it in a header file, if I tried to make a property or variable of the enum type: @property (assign) EnumType, it would require this to prefaced with enum, i.e. @property (assign) enum EnumType.

If you just type typedef enum {...} EnumType, you could write @property (assign) EnumType. I prefer this format in my source code, so I quit using NS_ENUM.

<comment><AUTHOR> I'm not seeing the same behavior. Just whipped up a test project and I'm able to define an enum with the macro and import it into a view controller which declares a property of that type.

What your describing would suggest that perhaps you left out the 'typedef' before calling the macro.</comment></comment>


Which theory fits the evidence? (2007) - <AUTHOR> http://raganwald.posterous.com/which-theory-fits-the-evidence-2007 <comment><USER2> The author seems to be completely confusing what probabilistic and deterministic mean.

If the world is truly and unknowably probabilistic, there is no hidden information to be learned. Updating your plans as you go in response to new (random) information will provide little benefit.

In contrast, if it is deterministic, there is hidden information to be learned. Once you learn this information (which may occur as the progress moves along), your subjective probability distribution [1] describing the possible outcomes loses entropy and your estimates become more accurate.

[1] This represents your uncertainty about the situation, not anything fundamental.

<comment><USER3> I believe you are conflating incomplete information (the game theory term) with probability (statistics).

If a random variable is truly random, there is no information in samples of the variable. Updating your plans in response to a random variable is like blindly betting that the previous dice roll will be the next dice roll -- any successful gambling strategy must rely on real knowledge of the underlying probabilities. However, you _can_ measure the probabilities as you go, updating your "best guess" with each sample: Bayesian models are an example of this.

The author is instead talking about incomplete information. In game theory, a game with incomplete information is not the same as a random variable. Software engineering is a good example of a game with incomplete information: pick your favorite piece of software. But pick one that (as far as you know) has no bugs. With 20/20 hindsight, you can determine how long it took to produce that software.

The author says the probabilities come from not knowing everything in advance. Once you know exactly how the software _should_ behave, you've written the software.

<comment><USER2> I don't think I'm conflating them. A probability distribution represents your beliefs about a situation where your information is incomplete.

 _The author is instead talking about incomplete information._

Exactly - incomplete information about a system which is more or less deterministic. And he's calling it the "probabilistic" model, in contrast to a "deterministic" model which he criticizes.

My only point is that the terminology raganwald is using is wonky. The distinction he is trying to make isn't probabilistic vs deterministic. It's open loop vs closed loop (in the control theory sense).

<comment><USER3> Ok. I'm not totally convinced we're not talking past each other, but I can grok your way of describing the problem: closed loop.</comment></comment></comment></comment>


Growl 1.3 finally available - <AUTHOR> http://growl.info/

<comment><AUTHOR> Good news: It's in the app store, works with Lion (10.7), lots of new features and support for GNTP Bad news: It's in the app store (for $1.99), you MUST have Lion to use it.

<comment><USER2> Bad news (at least temporary): a lot of applications seems to be using old framework (Sparrow, Skype, ruby gem, etc.).

<comment><USER3> I'm not sure how temporary this is. If I were releasing a desktop app that used Growl, I'd be rolling my own replacement right now ;(

It's easy enough functionality, when you're only supporting one app, and I don't want functionality for my-users to depend on a paid app they may not have.

Adium was a big driver for Growl adoption. It'll be interesting to see what they do.

</comment></comment></comment><comment><USER4> Anybody know why Apple has never added a notification system to OS X? I use and like growl, but it just seems like it should be OEM.

<comment><USER3> I absolutely agree. They have a notification system infrastructure on iOS, and leaving that to a third party on OSX seems sloppy.

I imagine they would argue that per-app notifications (badge icons, etc) don't require system-level integration, but as I think they've learned from iOS5 apps, there's more you can do, and it's really nice to have this in one central place.

Maybe Lynx, or whatever they call 10.7, will have them.</comment></comment>


Why The Haters are Wrong About Growth Hacking - <AUTHOR> http://www.bothsidesofthetable.com/2014/01/11/the-haters-are-wrong-about-growth-hacking/

<comment><USER2> I think I've actually had marketers convince me of this term before, but _in my personal opinion_ the term 'hacker' itself is misused to the point where it no longer makes sense.

This is from a very real recent conversation between my friend and me:

        *Me*: ...so that's great! What do you do now?

        *Tom*: Man, I'm a hacker at <company name> security services INC.
        [His company is actually security company]

Three days later, I chat with him:

        *Me*: Hey is there anyway to recover my network password?
        I think I forgot it and I can't seem to get it to work!

        *Tom*: No man, I don't deal with that stuff, I belong to a different department.
        Maybe I can connect you with one of my friends from the actual security department?

        *Me*: Wait, I thought you were a hacker?!

        *Tom*: Yeah, a growth hacker ;)

Obviously, Tom isn't his real name.

Another example is wherein one of my friends told me he actually 'hacked' his car. I really thought he did something to his engine/ECU until when he confessed to me that he just found out a way of shifting gears that made the car accelerate (slightly) faster.

The problem with the term 'hacker' is that it's mis-used to the point where it affects it's actual meaning. Now imagine if Tom had said that in an interview or in an environment where bullshit terms and hipster buzz words are not common, like a traditional enterprise company for example.

My favorite HN commenter RyanZAG put it out beautifully in one of his comments from an old thread[1]:

        That's the point, [a growth hacker] is actively making it difficult for you to
        understand him. By dropping in words with complex backgrounds, he hopes you
        (you generally, not you in particular) do not have enough knowledge
        in those domains to understand how those terms do/do not fit together.
        This leaves you in a position of having to accept his point as there might be
        truth in what he is saying - you aren't knowledgeable enough to tell the difference
        between the correct and incorrect usage of the terms.

        Generally, someone who understands the concepts will not use terms strung together like that unless forced.

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

<comment><USER3> The car example brings to mind Richard Stallman's post, _On Hacking_ :

"It is hard to write a simple definition of something as varied as hacking, but I think what these activities have in common is playfulness, cleverness, and exploration. Thus, hacking means exploring the limits of what is possible, in a spirit of playful cleverness. Activities that display playful cleverness have "hack value"."

[http://stallman.org/articles/on- hacking.html](http://stallman.org/articles/on-hacking.html)

</comment></comment><comment><USER4> Every time I see the word "hater" in response to criticism in the tech sector, I roll my eyes and find something else to read.

</comment><comment><USER5> The problem is the term "hacker" is nebulous enough on its own that to throw it into an entirely different context which may or may not have anything to actually do with "hacking" causes a lot of confusion. If we would have called it "growth marketing" or something more specific that didn't use the word "hack" there would have never been any confusion whatsoever.

Even as a marketer, I don't know when what I'm doing is growth hacking and when it isn't. Is it when I'm building my own tools? Is it when I'm trying to exploit systems? Is it when I'm baking something into the product that will help it spread? Is it only when I'm doing something new and novel? The word isn't well-defined.

Now all we can do is debate semantics. Though careful wording is part of my job, bickering about what is or isn't some buzzword isn't what I enjoy. I want to grow products I believe in, so I find it best to call myself a "growth marketer," "marketer who can program," or a "full-stack marketer" depending on the context.

The reality is, it doesn't matter what a word meant when it was created if that's not what it means to the person with whom you're communicating.

</comment><comment><USER6> Growth hackers are 2013's social managers.

<comment><USER7> Is "Social Media Guru" still a thing?</comment></comment>


Measurement of the neutrino velocity with the OPERA detector in the CNGS beam - <AUTHOR> http://arxiv.org/pdf/1109.4897v1

<comment><USER2> When linking to arXiv, please link to the abstract rather than directly to the PDF.

</comment><comment><USER3> [meta]

Ohmigosh, but I'm anxiously awaiting comments from learned physics folks. The paper, which is above my head, seems to do a nice job of laying out the mechanisms, methodologies and results, but:

        * Has the team squeezed out the uncertainty?
        * Is the result meaningful to regular folks?  If so, what is the meaning?</comment>


Show HN: Automated Feature Engineering in Machine Learning - <AUTHOR> https://github.com/Featuretools/featuretools <comment><USER2> "Show HN" is for projects that someone has created themselves. The way to show HN a project created by someone else is as a normal submission.</comment>


NumPy Tricks and Pitfalls - <AUTHOR> http://nbviewer.jupyter.org/github/vlad17/np-learn/blob/master/presentation.ipynb?flush_cache=true <comment><USER2> I uploaded to Azure Notebooks in case anyone wants to run it w/o setting up an environment:

[https://notebooks.azure.com/smortaz/libraries/advanced- numpy...](https://notebooks.azure.com/smortaz/libraries/advanced-numpy- techniques)

Click Clone, Sign in, then Run

<comment><USER3> Similar in CoCalc

[https://cocalc.com/share/4a5f0542-5873-4eed-a85c-a18c706e8bc...](https://cocalc.com/share/4a5f0542-5873-4eed-a85c-a18c706e8bcd/support/np- learn/presentation.ipynb?viewer=share)

Click "Open in CoCalc", then select all, copy.

<comment><USER2> +1 for CoCalc! It's great to see the number of notebook hosting services flourish.

<comment><USER4> Anyone know of, or can offer, a comparison of the existing notebook hosting services?

</comment></comment></comment></comment><comment><USER5> I'm an engineering student that does programming and am wondering, can I ask what are some good resources to gain the appropriate background that would allow me to understand more of this notebook? I have used tools like Numpy but probably not very efficiently without understanding their strengths and weaknesses. What books or online courses should I look into to know about memory, flops, and things like that?

I should probably ask this somewhere else but I'm not sure what the appropriate forum is, if you could point me to where I should that would be great. Thank you!

<comment><USER6> You shouldn't be afraid to fail, man! Instead of doing something in Matlab, try it in numpy and just do some research to figure out what you want to do.

Eventually you'll pick up tips from all your online resources, and you'll realize you could have done some things better the whole time.

<comment><USER7> Yes! There's many ways to learn. One way is essentially the brute force method: Google every Single thing until you get it. That's how I learned Nimoy when doing some basic image analysis.

<comment><USER8> I use a depth-first tree traversal to learn a subject. Start at something broad like "physics" and work your way down each sub-topic.

<comment><USER9> Yeah, but you better define some stopping criteria or else you'll end up with a PhD if you're not careful.

</comment></comment></comment></comment></comment><comment><USER10> The python link is not working?

[https://github.com/ASvyatkovskiy/PythonWorkshop/blob/Spring2...](https://github.com/ASvyatkovskiy/PythonWorkshop/blob/Spring2017/1_PythonBasics/PythonBasics.ipynb)

<comment><AUTHOR> Ah, that's a shame, it looks like that notebook is no longer available. Thanks for pointing it out. I'll remove the reference.

</comment></comment><comment><USER11> Whats the funnest thing you guys made with NumPy?

<comment><USER12> Considering the top numeric Python libraries have dependencies on Numpy, including data manipulation (pandas), machine learning (scikit-learn) and deep learning (TensorFlow), you may want to narrow down the question.

</comment></comment><comment><USER13> I still don't really understand why someone would choose to use NumPy when the numerical story in Rust is now so good.

<comment><USER14> TensorFlow doesn't have a Rust interface.

<comment><USER15> Isn't this a Rust interface for TensorFlow?

[https://github.com/tensorflow/rust](https://github.com/tensorflow/rust)</comment></comment></comment>


Skyrim sells 3.5 million copies in 48hrs - <AUTHOR> http://www.geek.com/articles/games/skyrim-sells-over-3-5-million-copies-in-first-48-hours-20111117/

<comment><USER2> Do not and I repeat, DO NOT, buy this game, launch this game, and click "New Game" if you plan on releasing something in the near future.

<comment><USER3> Oblivion was kinda _okay_ to me. Morrowind didn't hook me up. Fall Out NV was _okay_ too. But this game, got me looking forward to clock out and get home.

It is productivity-killer. Heed what he said.

<comment><USER4> Suffers from a lot of UI problems. Seems like they fired all the UI people and hired a bunch of artists instead.

Ars had a half-good coverage on it, but its interesting how badly it goes wrong. Some of the problems are bugs, some are not bugs but flaws.

You have two hands, two independent hands. Every object in each hand has a different effect on the overall combination. Two spells = double cast? Or perhaps cast a shield and an offence. Spell + weapon = attack and cast, but no block. Weapon + shield or 1 weapon = block enabled.

There is no way to hotkey combinations (1 = sword + shield, 2 = bow, 3 = double fire, 4 = shield + heal spell, etc)

Furthermore not all abilities are hand abilities, some are "Z" abilities (shouts, powers) which are independent but each "Z" ability is used in combination with hand combos. You may want diff Z abilities at diff times.

So instead of a two-mode choice where one selection is about hands, and the 2nd is about Z you have 1-8 keys, which pressing 2x means different things depending on what you have bound to it. And no combinations. Basically they solved for the most uncommon use case, leaving the most common use case as... bleh.

Not to mention inventory management being gawd awful. And the most time- annoying thing: Selling 10 items 1 at a time = more speech gain than selling 10 items 10 at a time. That's just BS as it means I have to chose between wasting time and leveling up OR just getting shit done and continuing playing. While achieving the exact same goal. Its like exploiting.

Basically one of the most critical aspects of the video game - the interaction - has been highly overlooked and underthought.

<comment><USER5> You did just highlight the only two problems I've got with the game. The weapon combination thing is kind of awful, but the 'Favorites' menu that comes up when you push Q is easy to use once you get used to it even though when you press LEFT click it equips to the RIGHT hand, and RIGHT click equips to LEFT hand... DEAR GOD FIX THAT PLEASE BETHESDA FFS! Other part being inventory management... or lack there of. Fortunately everything else in the game waaaaaaaaaaaaay more than makes up for that annoyance.

<comment><USER6> The great thing about the crappy UI is that there are (even now) very talented and motivated people working on mods to make it all better.

Bethesda games have seriously powerful modding capabilities. If they were released perfect out of the box, nobody would have any motivation to do as much work as they do (-:</comment></comment></comment></comment></comment>


Show HN: Travel the world on your dinner table – food that skips the restaurant - <AUTHOR> https://www.tarobites.com/taro-gourmet-story <comment><AUTHOR> We've been delivering authentic, unique food to families in the Bay Area over the past year. In Taro Gourmet, food lovers get to enjoy a curated experience from different parts of the world every week and experience new cultures through food - unique dishes and rare micro-cuisines that skip the local restaurant. In this journey, we may go to Japan to try the famous 5-course Siawase Menu, then go to Cuba to try Beef Empanadas and Polenta like the locals, and perhaps take you to Coastal Gujarat for a Kathiawadi Thali.

Once you are onboard as a Taro Gourmet, you will have option to receive specially curated meal for two every Tuesday. In a week leading to your delivery, we will send you all the information on this cuisine, chefs and story behind each item. As we embark on this gastronomic journey, Taro will satiate your palate as well as bring out the story the restaurants don't tell you.

Our first menu - exploring the Peranakan Chinese cuisine (called "Baba Nyonya") from the Malay Peninsula is live - we'd love your feedback :)

</comment><comment><USER2> Looks enticing. Is it a single fixed menu every week or can we select from a variety of different options?

<comment><AUTHOR> Thanks @arania for your interest. At this time, we have a single menu every week, but with time, as the interest grows, we hope to add more options.

</comment></comment><comment><USER3> @kpowerinfinity, how are the chefs chosen? Are these from any local restaurants?

<comment><AUTHOR> We have a combination of caterers and authentic restaurants on our platform. Amongst those, we choose the ones who represent the cuisine best.

One of the challenges we see customers face is being able to find the really great authentic dishes that go well from a cuisine they are not familiar with - which is why we put in a lot of effort to curate the menus and ensure a high level of quality in the food.

</comment></comment><comment><USER4> Nice share. My wife has me picking it up for the Nyonya Beef Rendang Curry.

</comment><comment><USER5> This sounds very interesting. where can I view your offering?

<comment><AUTHOR> If you visit the URL, you can sign up to receive every week. Delivering all over Bay Area only for now.

</comment></comment><comment><USER6> How are you ensuring quality of food?

<comment><AUTHOR> Great question @vividjoy.

First up, we work with licensed caterers and restaurant kitchens to ensure the food production kitchen is safe from a food safety perspective.

Secondly, we curate and personally taste each individual menu to ensure a high quality experience in terms of taste.

Thirdly, we transport all the food cold to ensure that it maintains its quality and consistency a lot better. We provide detailed heat and serve instructions so you can create the most authentic experience.

We'd love for you to try it out!</comment></comment>


Things that suck in AngularJS - <AUTHOR> http://lhorie.blogspot.ca/2013/09/things-that-suck-in-angularjs.html <comment><USER2> Documentation is by far the worst part of Angular. I spent 90% of my time Googling and 10% writing code. (Hey, maybe that's Google's plan -- ramp up traffic to search. Synergy!)

AngularUI is confusing, mostly undocumented and often behind Angular. Splitting ngRoute/ngAnimate into their own files is an odd choice, although I assume the former is so they can replace it with the superior ui-router. Which also is weird. Like jQuery, it seems like the UI portion is just off on their own doing what they want.

Google has the chance to build _the_ new framework that will run the web in 2-3 years. Much like Rails a few years ago. Angular is an amazing framework. It seems like they just don't care.

Angular needs someone versed in developer usability to take control of the public facing Angular stuff and give it a complete overhaul. Right now, it's the result of hundreds of people haphazardly making changes.

<comment><USER3> > Google has the chance to build the new framework that will run the web in > 2-3 years. Much like Rails a few years ago. Angular is an amazing framework. > It seems like they just don't care.

People use to say that about ExtJS a few years ago , then BackboneJS, etc ... There will never be one framework to rule them all , like Rails never ruled server-side developpment, Rails influenced other frameworks. Likewise Angular will , and something better than Angular will come by.

> Angular needs someone versed in developer usability to take control of the > public facing Angular stuff and give it a complete overhaul. Right now, it's > the result of hundreds of people haphazardly making changes.

that's how most open-source projects work. Angular is not a Google library, Google already has closure[1] , which is neat and scales(ie great performance,unlike Angular), Gmail is built on top of it , but strangely nobody else but google is using it...

EDIT :

[1] [https://developers.google.com/closure/library/](https://developers.google.com/closure/library/)

<comment><USER4> Maybe my understanding is wrong, but closure (and closurescript) are compiled languages. Angular is a UI framework, so comparing them is apples to oranges.

And I think the Angular community would be thrilled if it had even close to the kind of documentation that Rails has. You are correct, no one framework will rule them all, but there are examples of OS projects that have good docs (like jQuery and Rails) that can be used as comparisons when evaluating a framework.

<comment><USER5> You may be thinking of Clojure and ClojureScript — with a J. It's confusing naming, but those are different, and are not Google products.

In this thread, we're talking about Google's Closure (with an S) Library. Google also makes a Closure (with an S) Compiler, but it's more of an optimizer — it "compiles" from JavaScript to optimized JavaScript.

<comment><USER6> I would prefer to clear the confusion by calling Closure templates "soy templates", and differentiate it from the Closure compiler (for compiling javascript).

</comment></comment></comment></comment></comment><comment><USER7> I agree with most of the things mentioned in the article, but here are a couple of nits, just in case you have that exact problem and look for the fix:

$timeout having no $cancelTimeout: that's just called $timeout.cancel(), taking the promise you got out of the initial $timeout call.

$.when is called $q in AngularJS, support for promises actually runs deep in the framework.

Regarding the difficulty of instantiating controllers, and controlling who publishes what on the $scope when: I think there should be a style rule that you never, ever have some piece of JavaScript depend on the fact that some other piece of JS adds a variable to its parent scope. Yes, that's global state, or dynamic scoping, and should never be used. Just create a service if you need two directives to communicate. This gets more obvious and easier with 1.2 and the controller-as style.

Bi-directional data binding should never get you into a loop if you take care to only use the APIs in ngModelController. If you managed to trigger a loop, you're probably using the wrong API - loops are something that can happen in bi-directional data binding, but it's not a given.

This is not to say the author is wrong, as said above, I agree with most of his points.

<comment><USER8> Hi author here. Thanks for the feedback :)

re: instantiating controllers - services definitely help, but you still have to design and expose APIs to manage the lifecycle of variables from the controllers, and often times (at least for me), there are a lot of cross- concerns and it becomes impractical to have services to deal with each permutation of concern groups (this is especially a problem in more exploratory projects). I should note that in the cases where maintainability suffers the most, I have upwards of 5 core model entities and a dozen other auxiliary ones being manipulated in a single page.

Also, when things need to persist across route changes, then you're pretty much stuck to polluting $rootScope (or worse, $cookie)

re: "Bi-directional data binding should never get you into a loop if you take care to only use the APIs in ngModelController"

Yes, they _shouldn 't_, but under some unexplainable circumstances they do, even when I'm explicitly avoiding all the other undocumented traps (e.g. isolated scope interop, etc). One very big weakness in Angular is internal integration testing. Given enough moving parts, even simple things that should just work start breaking in very strange ways (looking at you, ng-if).

<comment><USER9> So why does Backbone.JS suck then? :)

</comment></comment></comment><comment><USER10> Shameless subreddit promotion: I (and the rest of the members) are trying to submit every single worthwhile AngularJS article to [http://www.reddit.com/r/angularjs](http://www.reddit.com/r/angularjs) so that it becomes a solid place to keep up with AngularJS tutorials and guides.

So far we've almost doubled the subscriber-base in about 3 months so things are finally starting to snowball a bit in terms of participation.

<comment><USER11> Why Reddit?

<comment><USER10> I didn't start that subreddit actually, just became a mod a few months ago. Reddit is easy for these types of things because so many coders are already using it to browse other subreddits. I'd prefer it be its own site entirely but this is working well for now so no need to mess with a good thing.

</comment></comment></comment><comment><USER12> > I consider myself to be a reasonably good js developer, but the internals of > AngularJS are overwhelmingly non-approachable.

Same here. I'm just getting up to speed with Angular. I spent the past weekend developing a web-app to manage our internal test-process. I like it a lot, I managed to create an incredibly complex and interactive web-app in two days.

Well, I say I like it a lot, I like the idea a lot: data driven mark-up, separation of concerns, etc.

However when it goes wrong it's incredibly difficult to step through the Angular code to work out what on earth is the cause of the issue.

It took me several hours of poking around trying to get this tree-view directive to work:

[http://ngmodules.org/modules/angular.treeview](http://ngmodules.org/modules/angular.treeview)

First to try and work out why the directive wasn't being initialised, then why the parameters were coming through with different names of the properties compared to what the original source expected (ngTreeModel rather than treeModel for example). Then, why on the inner elements of the tree the properties coming through _were_ named as expected!

So exasperated I head over to the documentation for directives, and, yeah, horrible... incredibly dry and terse.

I never quite got to the bottom of the issue, and have deferred working it out until I know Angular a bit more (var treeId = attrs.ngTreeId || attrs.treeId).

But I can't deny that this thing is incredibly powerful, so I think it's worth persevering with. But yeah, some better docs and up-to-date examples would be very, very welcome.

EDIT:

I remember reading this a few months back. Now I get it...

[http://www.bennadel.com/blog/2439-My-Experience-With- Angular...](http://www.bennadel.com/blog/2439-My-Experience-With-AngularJS- The-Super-heroic-JavaScript-MVW-Framework.htm)

</comment><comment><USER13> Angular, when it feels right, makes me incredibly productive, but I feel like I spend 90% of my time banging my head against a brick wall.

One of the single biggest usability features of anything is giving things appropriate names. The "other half" of Karlton's law is well in effect here. Angular fails miserably at this task. And that makes reading documentation, as well as maintaining enough context in my head to be productive nearly impossible.

From a documentation standpoint, the documentation focuses on "this is how this function works internally" rather than "this is how you use it to produce results".

I want to like Angular. So much of it feels right, and technically it seems excellent. It really is a usability nightmare, though.

<comment><USER14> _I feel like I spend 90% of my time banging my head against a brick wall._

Why do people want to work with a technology like that?

Personally I feel that the worst part of programming is when you're stuck trying to decipher the inner workings of an intermediate layer. It's so frustrating and futile, and I'm not learning anything generally useful because mastering arcane workarounds for technology layer X doesn't translate to anything else.

I'll much rather work with technology that doesn't make me feel magically productive 10% of the time, but does make me actually productive 99% of the time. There are plenty of those around.

<comment><USER13> I agree. What I'm trying to determine is whether or not it's a rabbit hole going down. Am I using a very powerful tool that's user interface is fine, but takes a little bit of time to learn. Or am I using a very powerful tool that has a user interface that's just bad. I'm honestly not sure - I haven't spent enough time with it to tell.

And yes. A programming language or framework is/has a user interface.

</comment></comment></comment><comment><USER15> I've been doing (mostly backend) webwork for a living for about half a decade now; the last ~6 months I have been building an app that is using angular.

I agree the documentation sucks; but beyond that I actually don't have any complaints. I don't have anything to compare it to; but I have written _some_ JS over the years and what angular is doing is blowing my mind.

Because it blows my mind I find it hard to bitch or find fault. I _did_ have to spend several hours stepping through angular core code to figure out WTF was going on with $scope.$watch(); but again, I can't really say that $watch _itself_ sucks; just that I had to read the code to actually understand how to use it.

If I _had_ to pick something other than documentation to point at, I would say that silent shadowing of non-object primitives when "new" scopes are creates for things like ng-repeat and ng-if

</comment><comment><USER16> This is a good set of arguments explaining some challenging corners of AngularJS.

It is true that when you start getting into the realm of edge cases, substantial knowledge of the framework's internals is required to put together a solution that is consistent with the 'zen of Angular'.

The author argues that some of the challenges introduced by Angular's $apply lifecycle and its approach to two-way bindings make it a challenge to use in certain circumstances. I would rephrase that and say that Angular's state- tracking and two-way binding solution is a very elegant hack to a very complex problem, considering limitations imposed by javascript, css and html. Angular proposes a set of integrated solutions that allow developers to avoid a substantial amount of boilerplate (and complex boilerplate, at that) for synchronizing state and the view. As with every other framework, it is not appropriate for every problem.

That being said, I continue to use and love Angular in a complex app with quite a few moving parts. I migrated from Backbone.js about a year ago and never looked back.

/x-post from Reddit: [http://www.reddit.com/r/javascript/comments/1pdzbz/things_th...](http://www.reddit.com/r/javascript/comments/1pdzbz/things_that_suck_in_angularjs/)

</comment><comment><USER17> I found Angular to be overly complex and couldn't imagine training a team to learn to use it in reasonable time. That's the scariest part of adopting Angular for me. How would other coworkers adapt to the API and how long would it take for them to use it?

The documentation was o.k at best, but I find that isn't the core issue. If you take a look at [http://docs.angularjs.org/guide/concepts](http://docs.angularjs.org/guide/concepts), it takes a very long time to completely understand what's happening under the covers.

I'm definitely looking for alternatives.

<comment><USER18> I disagree. I very like how the learning curve of angular follows my simple to complex application features. What I mean is that it's very easy to get started and hack you way through something that work, even if it's not 100% angular best practices. I.e. putting jquery code in your controller. As you become better and better, you start to have a better understanding of how angular works and your code improves similarly. I think this is an amazing quality for a framework. It reminds me how fun it was with jquery to get started even if the code was terrible, and then improve from it as you learn.

For a newcomer to an angular project, they can simply read the html and have a pretty damn good idea of what's happening. You don't have to start writing directives and play with transclusion right away.

</comment></comment><comment><USER19> The Angular docs are a ghetto. They really need to get rid of the Disqus comments section. Also, I don't think it really helps that their docs are an Angular application. I would really prefer a static html manual and an offline version in pdf or info format.

</comment><comment><USER20> If you think angular docs are bad , you should try ember. Ember is so frustrating. All answers on SO are out of date or wrong.

<comment><USER3> Ember creators cleary did not know where they were heading when they began writing it.

AngularJS was influenced by Flex and Spry( the creator worked at Adobe ) from the start, and still is.

<comment><USER21> Ember was heavily influenced by Sproutcore

<comment><USER22> Ember WAS Sproutcore, Sproutcore 2.0 is what became Ember.

Worth noting: Sproutcore was used to build iCloud, apparently.

<comment><USER21> that's what I thought, so clearly Ember wasn't written from Scratch

</comment></comment></comment></comment></comment><comment><USER23> Been using (or, trying to use) AngularJS for the past 2 months.

The way to get around the bad documentation for me are sites like [http://egghead.io/](http://egghead.io/) and [http://thinkster.io/](http://thinkster.io/) (and of course, tons of SO-ing).

<comment><USER24> I tried these, and they explain all the components nicely, but don't explain how to put everything together to get a mid to large scale app put together.

Maybe I just struggle as I am new to front end development, and to stuck in my server side mindset.

</comment></comment><comment><USER25> JQuery.when is similar to $q.all [http://docs.angularjs.org/api/ng.$q](http://docs.angularjs.org/api/ng.$q)

</comment><comment><USER26> So, a lot of people complain about AngularJS's documentation, not just this article or the comments, but everywhere.

Does nobody see the bright 'Improve this doc' button at the top right or something? It's an open source project - instead of complain, contribute! The link immediately opens a github pull request for your convenience and you can edit it in github's own editor.

Yeah, you could shift the blame to Google, but afaik, it's not one of their supported products, but a 10% time product - meaning that the creators / maintainers themselves can't work full-time on it either, and rely on the open source community to help them out.

Go forth and fork.

<comment><USER8> Improving docs is a bit of a chicken and egg problem: someone who's having a hard time with the docs is not going to be able to help improve it.

</comment></comment><comment><USER21> Surprised the knock is bad documentation (The site is awful), but I have heard that Angular has a lot better documentation then Ember currently does

<comment><USER27> Ember is still changing a lot, and some of the later changes are cleared inspired by Angular.

Ember-data looks much better than anything in Angular. Ember has a bit too much "convention over configuration" to my taste but the project is evolving well; I would not say it is production-ready but is getting close, so keep it under the radar.

</comment></comment><comment><USER28> My biggest pet peeve is how it suppresses errors in inline expressions.

<comment><USER29> Fucking hell. I do like AngularJS, but everything to do with expressions pisses me off. Fairly incoherent documentation, combined with lack of errors or any sort of meaningful way to debug them.

<comment><USER30> No doubt, care to share how you feel about $scope inheritance?

</comment></comment></comment><comment><USER31> Can't google just hire an intern to update the documentation? C'mon guys, it would likely be the very cheapest and most effective thing they could do at this point.

<comment><USER32> Angular has 'from Google' written on it, but it's not a Google-created project. They make no money from it, and Closure's way more popular inside Google.

They'd hire an intern to fix Closure bugs.

</comment></comment><comment><USER33> AngularJS explicitly [1] states that its suited best for standard CRUD apps. If you need to do something which requires touching the DOM or some low level manipulation, better stay off it. We decided against it while building our GUI Editor ( adpushup.com), and decided on Backbone (w/ Backbone relational). Backbone is a library (as opposed to being a framework) and plays really nice with jQuery and vanilla JS.

However, there'll be projects/components for which AngularJS (or EmberJS) would be better suited, and we'll surely love to give it a try.

[1] : [http://docs.angularjs.org/guide/overview](http://docs.angularjs.org/guide/overview)

</comment><comment><USER34> I absolutely love angular. Documentation is a definite given. I was having a problem with resolving an ng-class on <body> with $rootscope and I thought, "I'll go look at $rootScope's documentation!"

[http://docs.angularjs.org/api/ng.$rootScope](http://docs.angularjs.org/api/ng.$rootScope)

Psyche. Good god.

</comment><comment><USER35> Please do not use a framework that you do not understand. It is not good for the sustainability of your application. It is better to read/maintain a verbose application than dealing with some obscure magic.

I tried to learn AngularJs but I can't understand it so I gave up and used a simpler and more limited JS library (ractivejs).

</comment><comment><USER36> There's also a lot of missing fit and finish.

For example:

       watch( watchExpression, listener, [ objectEquality ] )

vs

       watchCollection( obj, listener )

Yet in watchCollection, like in watch, 'obj' can be an expression that is evaluated.

</comment><comment><USER37> When I first started using Angular I actually bought a video course on it from Pluralsight. So when I started my first Angular project I hit the ground running.

There are also a lot of free videos on Youtube, that sometimes explain things more clearly than the docs.

</comment><comment><USER38> A framework guides you into a determined way of doing things. It is a known tradeoff: 90% of what you need to do is simpler, 10% may be a little harder. I have now built two medium-large web apps over the last months with Angular and while, naturally, it's not without problems, I have found that most of my difficulties were due to me doing things in a non-Angular way.

I also find it is going in a very good direction with the recent changes in 1.2.0. They listened to a lot of feedback from the community.

</comment><comment><USER39> Where are the Angular devs? Are they not paying attention? I would expect at least ONE contributor to see this article and take in the feedback, offer advice, make corrections.

</comment><comment><USER40> > The page for directives is another (in)famous part of the docs that, despite > relating to one of the most important aspects of the framework, is often > derided as being overly dry

While that used to be true, the directives page recently got updated to provide a much better and simple guide to directives along with plently of code samples - [http://docs.angularjs.org/guide/directive](http://docs.angularjs.org/guide/directive)

<comment><USER41> There is still some work to do. Read the paragraph about transclude : true? $transclude is one of the best features of advanced directives, and the paragraph is still the old one which leaves you with a "... what?" even after you read it 5 times. An example is very much in roder here, but how long should the article be? Before, this section was actually in the guide, and the doc for $compile was neat and clear. Now it's actually messier than before.

</comment></comment><comment><USER42> I've been turned off by the Angular docs (feels like how I found API refs intimidating when I started coding) - can anyone recommend an alternative or book?

<comment><USER43> I've read "Mastering Web Application Development with AngularJS" and I thought it was pretty good at explaining difficult concepts in AngularJS.

</comment></comment><comment><USER44> In my opinion, despite some of the worst parts of Angular, we can use Angular as an integration with existing front-end web framework. We can make AngularJS work smoothly with the site running normal Ajax request, single page technique... (as I made Angular working with OpenERP few days ago).

By this way, we can save a lot of time dealing with DOM and re-use all existing technique too.

</comment><comment><USER45> Got also into Angular for some while and my verdict: if this wasn't made by Google it wouldn't haven gotten off the ground. Its concept has too many quirks and isn't thought through. Tried recently React and this feels much more sane, you have to relearn stuff but it's way less than Angular and performance is better.

</comment><comment><USER46> Worst for me: hooking up Angular with a stateless REST API without using a middle layer application for authentication.

</comment><comment><USER47> Every framework has pros and cons. I also suggest you have a look at EmberJS. All those features you are missing in Angular are there in EmberJS like promises using Ember's RSVP etc...And then EmberJS may be having its own cons...Testability is one of them..

</comment><comment><USER48> Those people here looking for a tiny, sane MVC framework with live bindings should try CanMVC. After doing a bunch of frameworks (JavascriptMVC, DoneMVC) I think that company produced a simple, well documented framework better than Backbone.

</comment><comment><USER49> As you dive deeper into Angular it becomes clear a lot of it is unpolished. For example $resource seems very half baked. It has lots of quirks e.g. trailing slashes and its promises support seems to be a bolt-on.

</comment><comment><USER50> I prefer rivets.js. I just need a little library for object binding, I don't need weird java-like concepts.

<comment><USER51> wow, nice find

</comment></comment><comment><USER52> Pah! Let's write all our code in hex. We can't have the government getting involved in anything!

Ron Swanson approves this message.</comment>


High Sierra Disk Utility exports corrupted images - <AUTHOR> https://twitter.com/reimertz/status/946007760868597760 <comment><AUTHOR> Apple needs to get their sh*t together. I have been experiencing +10 individual bugs while migrating from my old rMBP and I'm still not using it.

\- Time Machine backup fails.

\- Migration Assistant fails.

\- Restoring from Disk Image fails.

\- Internet Recovery defaults to Sierra making borked High Sierra installation not working due to no APFS support in said Internet Recovery.

I should send Apple an invoice for all the QA I've had to do for them.

tl;dr: Don't install High Sierra. Don't use APFS.

<comment><USER2> Seriously though. This is Outrageous for the kinda money we pay for Apple products!</comment></comment>


Death in the city: what happens when all our cemeteries are full? - <AUTHOR> http://www.theguardian.com/cities/2015/jan/21/death-in-the-city-what-happens-cemeteries-full-cost-dying <comment><USER2> It's interesting though because this is not a technical problem. A cremated body's ashes don't take up much space, and don't need to be housed in an urn.

It's entirely a cultural issue, in that we have special feelings about death and the treatment of a body after death. But thing about culture is that it's really flexible, but really resistant to change.

It's never going to be a problem that can't be solved. People are resilient and eventually if cemetery space does become completely unavailable, we'll make due. But it doesn't mean we won't be upset while we learn to cope.

It's more that it's a problem that we don't want to solve (because it would mean changing our cultural habits) but not a problem that is hard to solve. It just needs to get to a point where we actually need to solve it before anyone will worry about it.

<comment><USER3> I view the regulation argument against nuclear power similarly (i.e. that it's too expensive and time-consuming to get a nuclear plant licensed). Once energy becomes more scarce and/or the externalities of fossil fuels are priced in, this is a problem that will solve itself when needed.

</comment></comment><comment><USER4> Highly recommend people look for photos of the French Catacombs if you want some ideas of what to do with around 6 million skeletons. It's a very surreal day trip o_0

</comment><comment><USER5> It's not like there isn't space outside the cities. Take SF for example, they banned cemeteries in the city so there's a "city of the dead" just down the 280 freeway, Colma which is like 80% cemeteries.

Of course a cultural change so they took no space would be fine with me but still, most cities are surrounding by vast quantities of mostly unused or under used land.

<comment><USER6> Something similar happened with Shanghai. A lot of deceased Shanghai residents are buried in the nearby city of Suzhou. I visited my grandparents' graves there once and there were these massive graveyards covering entire hillsides.

</comment></comment><comment><USER7> If Cities: Skylines has taught me anything, I can answer this question without reading the article.

First, dead bodies start to build up in various buildings, especially well- trafficked buildings such as high density commercial buildings and offices.

The presence of the bodies dramatically decreases land value and happiness resulting in an exodus from the city.

As people leave the city, demand for new development rapidly decreases, along with revenues.

The city quickly digs itself into deep debt as it quickly becomes a ghost town, thousands of buildings become derelict, further decreasing the land value. Nobody wants to live here any more. Chirpy wheezes his last tweet as the last person complains they no longer want to live in this city and leaves.

(though, in cities skylines this usually happens because you have so many garbage trucks and hearses trying to collect the dead people & garbage that they all get stuck)

</comment><comment><USER8> The usual reason people prefer burial over cremation isn't so much the sanctity of the body, as that there is a permanent space to visit, lay flowers, etc.

I've always been fond of the idea of funeral-home "rememberance rooms", where urns of ashes are stored in small "shrine" spaces that can be visited instead. Japan's _pet cemeteries_ [1] in particular take this to its natural conclusion: grids of cubby-hole shrines creating the mortuary equivalent of a rental-box consignment store[2].

[1] [http://japanvisitor.blogspot.ca/2012/10/jindaiji-pet- cemeter...](http://japanvisitor.blogspot.ca/2012/10/jindaiji-pet- cemetery.html)

[2] A.k.a. "Cube stores": [https://www.google.ca/search?q=%E6%A0%BC%E4%BB%94%E8%88%96&t...](https://www.google.ca/search?q=%E6%A0%BC%E4%BB%94%E8%88%96&tbm=isch)

<comment><USER9> Cubby-holes lose something along the way though. I have faint memory of visiting a relative whose grave is a marker on a wall- likely a soldier- and it comes up very lacking compared to a headstone in a field.

<comment><USER10> How about this: When a cemetery is "full", temporarily remove all the headstones, add 10 feet of dirt over the whole site, then replace all the headstones in the original positions. Now you can start burying more people. What's wrong with that? People are still buried, you don't have to dig people up, what difference does it make if people are 6 feet under or 16 feet or 26 feet.

<comment><USER11> San Diego did almost exactly this. There is an old cemetery there where they removed all the headstones and buried them in a mass grave, but left the bodies. Then they put a city park over the bodies and children play there now. I'm serious.

<comment><USER12> That's how Cheeseman Park in Denver was created, too

</comment></comment></comment></comment></comment><comment> rm_-rf_slash Death and cemeteries are different than they used to be. Cemeteries used to be places to go on picnics, for kids to play, and so on. It's a relatively recent phenomenon for death to be seen as something to be removed from daily life. Perhaps due to modern medicine and disease? I'm not sure. But I am sure that cemeteries are unsustainable unless we reincorporate them into a part of our communities, rather than being places to avoid.

<comment><USER13> > Death and cemeteries are different than they used to be. Cemeteries used to > be places to go on picnics, for kids to play, and so on.

Yeah, parks in cities are a relatively recent phenomenon. Previously, cemeteries filled a lot of the role that parks did.

Central Park was not the first, but it was one of the first (and most prominent at the time) example of a park that was explicitly _not_ a cemetery.

<comment><USER14> It seems that this has to do specifically with public parks. Lavish private parks and gardens have existed for a few millennia as a respite from homes and cities and as a way to contemplate nature. (Seeing as it took so much money to build and maintain them, they typically were kept for their owners' pleasure alone)

</comment></comment></comment><comment><USER15> this is mainly a cultural problem. We have to accept that if we want to be truly sustainable we have to make every proces of our life sustainable, including death. This mean using the death in some way(as a fertilizer, for example)

<comment><USER16> It is indeed cultural. Take how India for example - a place where 20% of the world's population steeped neck-deep in traditional culture is jostling for 2% of the earth's habitable real estate - dodged this economic disaster by its own cremation culture. Lucky culture on that.

<comment><USER17> I'd hypothesize a long history of relatively high population density created the cremation culture. Humans have been so successful because we adapt. Although the original motivation may be murky, I'd bet many arbitrary cultural institutions are actually adaptations.

<comment><USER18> This seems clear when you compare ancient religious texts side by side with what was known about the natural world in their respective times. Unclean animal species, menstruation rituals, etc.

</comment></comment></comment></comment><comment><USER19> Incinerate your loved ones!

<comment><USER20> Why just incinerate them when you can boil them down into useful hydrocarbon fuel sources? [https://en.wikipedia.org/wiki/Thermal_depolymerization](https://en.wikipedia.org/wiki/Thermal_depolymerization)

<comment><USER21> awesome idea. I accumulated biomasss for several decades, i don't want to waste it by just getting incierated.

</comment></comment></comment><comment><USER22> Cemetery places in Italy are not permanent - they get recycled and the remains dumped into some kind of common area. I think it's supposed to happen well after anyone who would remember the person is still around, but... still, I don't much care for the idea.

</comment><comment><USER23> What happened in London was this: [http://www.orderofthegooddeath.com/enon- chapel-londons-victo...](http://www.orderofthegooddeath.com/enon-chapel- londons-victorian-golgotha#.Vg7EO5RXerU)

Also: [http://www.theguardian.com/cities/2015/jan/22/death-city- gri...](http://www.theguardian.com/cities/2015/jan/22/death-city-grisly- secrets-victorian-london-dead), and an attempt to solve the problem: [https://en.m.wikipedia.org/wiki/London_Necropolis_Railway](https://en.m.wikipedia.org/wiki/London_Necropolis_Railway)

</comment><comment><USER24> This problem has been solved already, even for cultures that do not cremate bodies.

The scarce cemetery space is devoted to _recent_ burials. The corpse is left in the ground long enough for all the soft tissues to decompose. It is then exhumed, and given a second burial in an ossuary, or for the more prestigious deceased, a reliquary.

The mass of a dry skeleton is about 1/5 that of a wet body, and without the connective tissues, you can stack bones more efficiently.

Or just borrow a trick from hard disk drive manufacturers and orient the corpses vertically instead of horizontally. In other words, bury bodies in a standing position, rather than lying down.

</comment><comment><USER25> What we do in Chicago is bury people in the suburbs. The rates are better there and there's availability. Its also less cramped and allows for larger tombstones and such. People just need to get used to driving 30-60 minutes to visit deceased loved ones as opposed to taking a stroll to the nearest cemetery.

</comment><comment><USER26> I encountered this problem when playing Cities: Skylines. Simple solution: build more crematories

</comment><comment><USER27> When traveling to LGA from Manhattan, I'd usually pass by what is a very large cemetery compared to what I'm used to here in the rural South; it always made me wonder how a city the size of NYC dealt with the deceased.

<comment><USER28> For the interested, parent is probably referring to Calvary Cemetery [1]. I don't think it's the largest cemetery in the US by acreage, but it's the largest by number of burials. I've always thought it must drive economists and real estate developers nuts that there's all this land in New York City which is probably permanently off-limits to development.

[1] [https://en.wikipedia.org/wiki/Calvary_Cemetery_(Queens,_New_...](https://en.wikipedia.org/wiki/Calvary_Cemetery_\(Queens,_New_York\))

<comment><USER29> 365 acres = .570 mi².

NYC population density = 27,858/mi².

That's space for 15,723 (living) people.

There are approx 3M people buried there.

</comment></comment></comment><comment><USER30> Ray Kurzweil predicts that "aging" will be solved very soon. So this problem will go away.

[http://www.singularity.com](http://www.singularity.com)

</comment><comment><USER31> Soylent?</comment>


A Rebuttal of an Article Involving the CL-CHARMS Common Lisp Library - <AUTHOR> http://verisimilitudes.net/2018-06-22 <comment><AUTHOR> More about the author's project: [https://news.ycombinator.com/item?id=15706120](https://news.ycombinator.com/item?id=15706120)</comment>


Ask HN: Does Apple slow down old Macbooks as well? - <AUTHOR> Has anyone actually tested it properly? If so what are the results <comment><USER2> I keep thinking Intel should have something like big.LITTLE - chips with fast/power-hungry cores with other slower cores with low-power running the same ISA. Processes with lower priorities (or causing less load) could be moved to the power-conserving cores while stuff that creates large loads could occupy the faster ones. The threshold should be configurable so you could have as much or as little running on your power-conserving cores as you want your batteries to last. That, in addition to aggressively managing clock as we already do for power/thermal reasons should yield a very interesting generation of laptops.

<comment><USER3> Never thought of that. But, I'm very sure Apple will use those big.LITTLE chips and use a dramatically smaller battery to give you 10 hours of battery life and thinner laptop. /S.

I feel like in the past few years, processors are remaining as fast but better power efficient, but the end-user never sees longer use out of them. Because manufacturers skimp on battery catching up with power efficiency :-(

<comment><USER2> If I built a computer as heavy as my first Thinkpad using a modern processor and filling the rest of the machine with batteries, I'd have a month of continuous use ;-)

<comment><USER4> There are regulations on how much li ion battey a machine may have to be allowed in the cabin pn a plane. I think many companies won't cross that limit. So something like the removable / modular batteries from the past might be great

<comment><USER5> [https://www.faa.gov/about/office_org/headquarters_offices/as...](https://www.faa.gov/about/office_org/headquarters_offices/ash/ash_programs/hazmat/passenger_info/media/Airline_passengers_and_batteries.pdf)

Up to 100 Wh / battery, up to 160 Wh with airline approval. All laptops I know of have a 100 Wh battery at most. Macbook pro's used to have that size, but the latest gen has a smaller capacity. You can carry spare batteries, as long as they are for "personal use".

<comment> Spartan-S63 Word on the street was that the new MacBook Pros came with shrunken batteries because they couldn't get the terraced design to fit within design spec (thermals, I think) like they did with the MacBook. Hopefully in their next design iteration, they'll be able to fit a 99.5Wh battery back in the laptop.

</comment></comment></comment></comment></comment></comment><comment><USER6> I have a mid 2014 mbp i7 with almost 900 charge cycles that received a new battery from Apple while in for a system board.

Running Sierra, I noticed an immediate speed increase on tasks I have done hundreds of times. Everything was snappier again.

Comparing the i7 I have VS the latest i7, there is only about a 25% difference 3 years later. I can say my mbp likely dropped 25% in speed before the battery swap.

I wish I had taken more geekbench diagnostics before sending the laptop to Apple. I did notice several mbp's with the came cpu ad mine had a geekbench score in the 6000's while the spec was in the 8000's. The battery condition may be a factor.

It would be interesting to correlate geekbench (or something comparable) scores to charge cycles. This question is likely worth asking with Google made Android devices that have had battery issues like the Nexus 6p too.

</comment><comment><USER7> Yes, it actually can happen that degraded battery will cause the CPU to be locked into low power state. However on all the models I've seen that happen it was also accompanied by a clear error message that battery is dead and it should be replaced.

<comment><USER8> I have a 2013 rMBP in this state now with a bad battery. It strangely alternates between "Replace Now" and "Service Battery" [1] depending on the day, but I do think performance is degraded.

It seems less significant but still noticeable when connected to power than on battery, even when the battery is full charged. IIRC my battery is around 50% design capacity with 1000–1500 cycles.

It would be nice to be able to definitively tell if macOS is underclocking or something.

[1]: [https://support.apple.com/en-us/HT201957](https://support.apple.com/en- us/HT201957)

</comment></comment><comment><USER9> I asked the same yesterday in another topic. I have mid 2012 MacBook Pro that behaves terribly with High Sierra, while it was fairly snappy with Sierra. Now it takes about 5 seconds to start any app, even for simple apps like iTerm2.

Since I can't find too much complaints on the web about laptop slowing down and the reply to my yesterday question was that some users don't see much difference, I am now downloading Sierra and will install it on another partition. This should answer this question precisely.

I can't leave High Sierra as is because it made my MacBook Pro unusable.

<comment><USER10> Do a clean install. My 2010 runs just fine on HS with none of those issues.

<comment><USER9> Thanks. I suspect the same since I don't see too much complaints online. It is most probably just a weird timing when I got fed up with slow MBP while we see all the iPhone slowdown reports.

</comment></comment></comment><comment><USER11> I find it weird that there isn't enough outrage about this and it is already beginning to be the new normal. In a more ideal world, Apple would have been forced to issue a patch that reverses this forced obsolescence on consumers.

<comment><USER12> Except it's debatable whether it is forced obsolescence or a sensible approach to battery management.

<comment><USER13> They could just give the chance to change it while setting the default behavior for better battery management. So the common user would be ok and the power user could decide what to prioritize. The problem is, indeed, the fact this is a no reversible decision atm

<comment><USER8> Definitely feels like an advanced setting they could bury in the battery settings.

</comment></comment></comment></comment><comment><USER14> Yes, when I got the Macbook battery needs servicing thing couple of years ago, the processor was permanently in a low power state of 800Mhz. You can verify it using the Intel Power Gadget thing or terminal.

<comment><USER15> I have a 2011 Macbook Air (13-inch) and my battery has a "Service Battery" alert. It's very slow when the battery is not at full capacity but it's fine when the battery is full.

I ordered a replacement battery off Amazon last week.

<comment><USER16> Be aware that most "genuine" replacement batteries are counterfeit. I bought a replacement battery for my 2011 MBA too, but it only worked good for a couple of months.

</comment></comment></comment><comment><USER17> In my experience my 2009 MBP didn't slow down as the battery wore down. But I did read somewhere that if you remove the dead battery without replacing it, then the MBP will only run at about half speed on mains power alone. Depleted batteries have a habit of bulging and damaging the internals. I ended up buying a third party replacement battery, but it never restored the MBP to its original run-time capacities.

<comment><USER18> That's because older MacBooks could draw more power under 100% load than the power adapter could provide. Instead of shipping with a bulky 90W adapter, apple decided that 65W one is sufficient for almost everyone, and if you need to run your machine under 100% load it would just draw extra power from the battery. Hence, if you don't have a battery or its dead, the machine will never allow 100% load(this might be different if you actually plug in a 90W adapter, but I don't remember the details now).

<comment><USER19> So it was literally impossible to run the device at full load for extended periods? Presumably the battery eventually hit 0 and the devices was then power limited? That's insane. I assume thermals prevented it before the battery did, however for premium devices, it seems like a profit protection measure for Apple, rather than a cost saving feature for uses.

<comment><USER18> If the battery was full and you were running at full load it would take over 5 hours to discharge the battery to zero - and if you are running CPU+GPU at full load for over 5 hours on a laptop then I'd say you are probably on a wrong device for this. I'd take a smaller (lighter) power adapter + max 5 hours of full load than a heavier adapter and unlimited full load. I actually know someone who carries a 45w adapter with his macbook 15" because it's smaller and the laptop runs from it fine unless you run some heavy loads on it - for normal browsing/coding work it's fine.

</comment></comment></comment></comment><comment><USER20> Not sure about slowing down, but I'm afraid to update my mid-2012 rMacbook anymore. High Sierra crippled my external 32" monitor earlier this year; I spent a whole weekend downgrading it to El Capitan. Now my bluetooth devices stopped working right after Security update 2017-05 last week.

<comment><USER6> I generally have ended up staying 1 release behind the current MacOS for this reason while keeping up with security updates.

Apple has a special talent of breaking what was working just fine. While I'm sure some of it is is very worthwhile improvements under the hood that doesn't get the appreciation it deserves, do the pros outweigh a laptop that no longer runs for me?

The latest mbp's while looking great, have lead me to wonder if they are for technical creators/pros anymore..

The cpu is regularly at least a generation behind.

A missing escape key is humorous, while I can remap my escape key to the ~ key if I had a touch bar..

The fact that there's no Apple made dock for a mbp's after a decade of having flawlessly operating docks with HP. Apple display doesn't cut it for everyone as a dock.

Still I continue to use macos because it's the most usable linux/bsd out with respect to available apps. Maybe the Chromebooks will push on this front.

</comment></comment><comment><USER21> Can we get a positive answer from Apple that the company doest not slow down the CPU for older MacBook Pros?

We just need a truthful answer from Apple when we do not have any evidence for that, or it's hard to get an evidence.

I had the older MacBook Pros (mid 2012 and 2013) and they are getting slower than years ago. So we need to make sure Apple is not doing the slow down like it does to old iPhones.

</comment><comment><USER22> All computers have the potential for slowdown as they age because 2 things naturally happen: cooling systems clog with dust and thermal paste degrades. Both of these eventually reduce the efficiency of the cooling system, resulting in higher CPU temps. Unchecked, this can result in CPU throttling by the hardware itself.

<comment><USER23> 3 things. Hard drive/SSD. Full ssds rUn slower naturally. Hard drives with bad and remapped sectors can go dramatically slower.

</comment></comment><comment><USER24> I've been wondering the same thing about the iPad Mini. My mom and mother-in- law both have the same vintage (v1, I think) and both complain of browser crashes when loading some web sites and playing video on Facebook. My guess is it's a combination of terrible bloated sites and only having 512MB of RAM (a 2-year-old HTC Desire with 1GB RAM works fine for the same purposes), but recent news does make one wonder if a battery would make a difference.

</comment><comment><USER25> I haven't tested it properly, and n=1, but I recently cleaned a MBP 2010: dedust, replaced battery (was at 85% with approx 900 cycles), replaced both fans, and reapplied thermal paste (I'd already replaced the RAM and HDD with SSD earlier, and dedusted numerous times already). If you follow iFixit guides and have the right tools (mentioned in the guides) its fairly easy to do. I'm not good with this stuff at all, and I managed. The problem was that the machine got very hot very easily. It still gets hot very easily (seems to even spike quicker now) but the fans need to work less hard.

The Nvidia GPU is also on life support on this machine due to a bug which isn't covered under warranty. For that I use Gfxcardstatus and keep the machine's GPU in Integrated mode (the slower Intel CPU). Its a widely known problem with the 2010 series. All apps which use Electron or Chrome put the machine's GPU at boot in Dedicated mode. Which is annoying. Firefox doesn't do this, and since 57 yields good performance. Although I'm not sold on watching videos in Firefox; Chrome/Safari might yield better performance on Mac according to certain anecdotal evidence I found (including my own).

Now, there's a few reasons why _newer_ macOS versions are slower than older. One reason being APFS [1] [2] (Reddit thread [3] [4]). Especially when using FileVault. Keep in mind thats a state of the art MBP; its from 2017.

Regardless, we need benchmarks.

[1] [https://malcont.net/2017/09/apfs-vs-hfs-benchmarks- on-2017-m...](https://malcont.net/2017/09/apfs-vs-hfs-benchmarks- on-2017-macbook-pro-with-macos-high-sierra/)

[2] [https://malcont.net/2017/07/apfs-and-hfsplus-benchmarks- on-2...](https://malcont.net/2017/07/apfs-and-hfsplus-benchmarks- on-2017-macbook-pro-with-macos-high-sierra/)

[3] [https://www.reddit.com/r/osx/comments/72z2v5/apfs_vs_hfs_ben...](https://www.reddit.com/r/osx/comments/72z2v5/apfs_vs_hfs_benchmarks_on_2017_macbook_pro_with/)

[4] [https://www.reddit.com/r/mac/comments/6nnaex/i_made_some_ben...](https://www.reddit.com/r/mac/comments/6nnaex/i_made_some_benchmarks_on_apfs_to_hfs_comparison/)

<comment><USER26> Which battery did you get for it?

<comment><USER25> This one (new) [1]. Note I'm from EU, so I bought it from the iFixit EU store located in Germany. Delivery took a few days during Black Friday peak. Little bit more than half a week IIRC.

When I first checked earlier this year they weren't in stock, so I asked when they'd be in stock which was soon. Once they were in stock I lacked time IRL so had to postpone order. Hence I only replaced it a good month ago. Had to order some kit and accessoires to open up the machine (was on sale during Black Friday) including the magnetic project mat which you can use to group the screws (you can add notes as well on it). 10/10 recommend that! (I'm not affiliated btw.) I recommend to just check the guides. They're good, and if you need help you can ask questions over there. The people there are much more knowledgable on this subject than I will ever be.

Only bad thing is that the guide told me to not worry about disconnecting the iSight camera. I managed to break that cable. That was during thermal paste application guide though; not battery replacement. The other disconnections of cables all went very well or flawless. Nothing broken in these departments. In a way, no iSight is a plus anyway.

[1] [https://eustore.ifixit.com/en/Parts/MacBook-Parts/Macbook- Pr...](https://eustore.ifixit.com/en/Parts/MacBook-Parts/Macbook- Pro/15/Unibody/Mid-2009/MacBook-Pro-15-Unibody-Mid-2009-Mid-2010-Replacement- Battery.html)

<comment><USER26> Thank you. Unfortunately I'm not in EU and package forwarders don't accept lithium batteries anymore.

<comment><USER25> If you're in US, there's also iFixit US. Just check the main site [1] and see if its possible. You can select language on top right.

[1] [https://www.ifixit.com](https://www.ifixit.com)

</comment></comment></comment></comment></comment><comment><USER27> My 2011 iMac was quite fast until upgrading it. Now I can't open anything without waiting 10 seconds at least. It's been painfully slow since the upgrades.

</comment><comment><USER28> Do Apple operating systems updates slow down older Mac minis? My 2012 Mac mini slows each time I update--and it has no batteries.

</comment><comment><USER29> My MBA12 gets slow when the % charge is low, but I don't know whether they do it based on absolute charge as well.

</comment><comment><USER3> Curious. Do older MBPs run Linux with better support? Perhaps longer battery life with the laptop project and stuff...?

<comment><USER30> Arch runs pretty well out of the box on my 2013 Air, it falls down slightly on battery life (3-4h rather than 8-10h with macOS) and CPU fan running wild with no load.

Both things are much more configurable under Linux than macOS of course, and you should just be able to set it up once and forget it. (Or keep a note, in case you want to replicate it on another machine...) But the flip side being that it is something you'll have to configure.

<comment><USER31> falls down "slightly"...

</comment></comment></comment><comment><USER28> Does Apple slow down old Mac Minis too? It seems to get worse after each OS update.

<comment><USER32> Every† OS update includes new features: they're generally not just bug fixes. These new features will generally increase the amount of work the machine needs to do, and often is made feasible by the availability of the new hardware.

If the older machine doesn't have the same power as newer hardware, it will likely be slower: it's doing more work. Anyone developing a system needs to make a choice: allow the new feature to run on older hardware and accept that it may be slower, or don't allow it to run. They also need to make tradeoffs in what feature sets they make available to platforms (e.g., version-x-for- platform-a, version-x-for-platform-b). Each additional version/platform configuration is additional work to maintain. You may disagree with the choices they make, but they do have to make these choices depending on where they want to distribute their resources as a company.

If the underlying assumption is that Apple is doing this on purpose to make machines obsolete, I think that's mistaken. If OS updates make an older machine run slower, that happens because the update includes new features which requires more resources, and older machines may not have as many resources available.

† At least major versions, and most minor versions.

</comment></comment><comment><USER33> i am NOT TECH SAVY at all and am about to Purge all Apple products. My IMAC is sooooooo slow now.......Freezes..... Mouse cursor not available etc.... And NO not so stupid to not have check the batteries....... Can I save my IMAC?</comment>


How to search for domain names securely - <AUTHOR> https://stanbright.com/domain-name-search/ <comment><AUTHOR> In the light of the recent popularity of "Tell HN: Never search for domains on Godaddy.com" [https://news.ycombinator.com/item?id=24506303](https://news.ycombinator.com/item?id=24506303), I decided to quickly share my experience with searching for domain names.</comment>


Has Craigslist been hacked? - <AUTHOR> http://craiglist.org/ Removed the link to Craigslist.org so that people wouldn't accidentally click through to a site (we've now verified) is hacked. <comment><USER2> Repeat after me:

I won't link to sites i suspect being compromised. I won't link to sites i suspect being compromised. I won't link to sites i suspect being compromised. I won't link to sites i suspect being compromised. ...

</comment><comment><USER3> I saw this, too. If you can get a little deeper into cl, ex. boston.cragislist.org/i/apartments or boston.craigslist.org/search/aap, you get a Microsoft Frontpage site with the title "digital gangster for life".

<comment><AUTHOR> It's struggling to load though -- I don't think the hacker was anywhere near ready for Craigslist levels of traffic.

</comment></comment><comment><USER4> Looks like it is redirecting to "digitalgangster(dot)com) -- Also, DNS shows registrant as "Registrant Name: Steven wynhoff @LulzClerk"

</comment><comment><USER5> [http://craigslist.com](http://craigslist.com) also doesn't work. Wow this is trouble for sure.

</comment><comment><USER6> Please change the link to this discussion rather than linking directly to a server that seems to be compromised.

</comment><comment><AUTHOR> Maybe somebody hijacked their DNS?

<comment><AUTHOR> I have a feeling the lesson at the end of this is going to involve setting longer TTLs.

<comment><USER4> That's a tough one, because in the event of a hijacked domain like this, a lower TTL would also force the "good" settings back faster.

</comment></comment></comment><comment><USER7> Yup, hacked.</comment>


Tell HN: Please make this - <AUTHOR>

I want a plugin to Gmail that will automatically re-send an email if no response is received after a few days. I would pay for this.<p>It seems nowadays that about half of people only respond to the second email you send them, so this would be a huge time-saver. <comment><USER2> <http://www.followup.cc/faq.php> looks like it'll work, but not for in-browser use.

Edit: <http://mail.google.com/mail/help/autopilot/index.html> if only...

Edit2: this may be what exactly what you're looking for: [http://www.makeuseof.com/tag/create-an-automatic-email- respo...](http://www.makeuseof.com/tag/create-an-automatic-email-response- with-gmails-new-filter/)

</comment><comment><USER3> You could set a FollowUp.cc reminder on your emails in the Bcc field, and then it would remind you to FollowUp with them (or set up a filter to automatically Cc or Bcc FollowUp), but to automatically send on your befhalf, any software would need access to your inbox. Not sure if you're willing to give that info out.</comment>