To stop a virus, California has euthanized more than 1.2M birds - <AUTHOR> https://www.latimes.com/local/lanow/la-me-ln-virulent-newcastle-disease-outbreak-in-southern-california-20190607-story.html <comment><USER2> 1.2 million to stop a virus?

That's called Just Getting Started in Iowa.

5.3 million Iowa laying hens to be destroyed in bird flu outbreak

[https://www.desmoinesregister.com/story/money/agriculture/20...](https://www.desmoinesregister.com/story/money/agriculture/2015/04/20/avian- flu-chicken-eggs/26094811/)

<comment><USER3> []

<comment><USER4> Please don't take HN threads into regional flamewar.

</comment></comment></comment><comment><USER5> Thousands of people, from the researches, to the authorities, to the workers in the field, are suffering this trauma ten fold. Imagine yourself, as part of your job, having to go to someone's house and murder their chickens, while they scream and cry?

Now picture yourself doing that every day, 8 hours a day, for months on end. Imagine being the person giving the orders to kill. The researcher advising it.

But this article doesn't focus on that tragedy. It doesn't tell the story of those heroes who are trying to _save_ billions of animals.

These actions are necessary. The article doesn't even argue against that, and no one in their right mind would think that California and all of its workers are going out of their way to spend hundreds of millions of dollars just to kill people's chickens.

We know what happens when diseases get out of control. Whole species are wiped out. It's happened before, and it can happen again. We eat hundreds of millions of chickens a year in California already; 1.2 million is a fraction of a percent. A small price to pay to save the tens of billions of chickens in the world.

So instead of bringing the spotlight to honor these people having to do the dirty work to save our animals, we get an article feigning outrage and showcasing the reckless behavior of a few people.

It's hard for me grind an axe against those families that have had to suffer through the loss of their animals, even if the killing is for a "good reason". Humans never fair well at that violent line between emotion and reason.

But there's no two ways about it. Livestreaming the killing of animals on the internet, and inciting people to spread a deadly disease is reckless. It will only lead to far more death. You can't call yourself an animal lover and then tell people to ignore the very real threat of a disease that could wipe out billions of animals. The disease doesn't care whether that chicken is food or your family pet. It doesn't care that about your likes on facebook. It doesn't care about how much your care for your animals. It is here to kill, brutally and efficently, for no reason at all. I can't imagine an evil greater than disease, no matter how much distrust you may have for people.

I suppose I'm just frustrated by the multitude of spotlights the media is willing to shine on irrational human behavior. There's a story, just as tragic and beautiful in its own way, to be told by those on the other side of this fabricated controversy, but this article ignores that. The title of the article asks "Is it reckless or necessary?" The euthanisia was necessary. This article was reckless.

<comment><USER6> Ok, now substitute 'humans' for 'chickens', 'children' for 'animals' etc and re-read what you just wrote.

<comment><USER5> I appreciate your point, but I don't think it's applicable.

Yes, if one were to substitute humans into my comment, then it'd sound like I was advocating for nazi-esque holocausts.

Obviously I'm not, and the two are not the same. We don't raise and eat humans for food, so any arguments about livestock are clearly different than the equivalent arguments about humans.

And we have better strategies for humans anyway. We expend vast fortunes to develop vaccines; we can quarantine people; we can restrict travel; etc. All of those are strategies we use and are effective _for_humans_ to prevent the spread of disaster diseases.

But none of that is applicable to livestock. We aren't willing to spend the vast fortunes required to develop and vaccinate tens of billions of animals. Quarantine isn't effective. We can't communicate with animals. Etc.

At the end of the day, people expend millions of dollars to save a single human life. The people willing to spend that much on a pet is vanishingly small. Let alone livestock. There are clearly distinctions here which preclude a simple substitution of "human" for "chicken" in any of these arguments.

<comment><USER7> Human beings may pretend there's a difference out of moral convenience, but in fact there isn't any difference at all. All there is is the lie that comforts conscience.

For what it is worth, I think that culling millions of these animals is the smart move. I also believe that it is a small part of a larger evil; we as a species are committing industrialized murder on the scale of hundreds of billions a year.

<comment><USER8> Is murder on a smaller scale okay? Some animals eat other animals. Maybe the natural world has no moral values and it's actually humans who have morals...

<comment><USER7> I think that what applies to a cougar or a bear or a chimpanzee or some other predator animal applies to humans. It is the natural course of things. It's why I still eat animal meat.

But it is one thing to kill an animal to eat it, or to kill another person to eat what he has, in the course of survival. It is another thing entirely to construct an elaborate global mechanized system in which we impersonally breed, grow, and wantonly murder animals on the scale of hundreds of billions. The entire process from fertilization to slaughter to grocery sterilized and clean, the majority of the citizens in industrialized nations never have to feel the moral weight of the acts done in their name. They never have to consider the perspectives of their quarry, of the lives they end to further their own. All the gifts that we have cognitively above the rest of the animals come with, I think, the burden of knowledge. We have the ability to see before and after our actions, to see what effect we have on every other living and unliving thing.

When I think about what made the holocaust evil -- it wasn't the killing. We make war, and justify it, endlessly. So surely it isn't actually the killing that bothers us deep in our consciences.

What made it different was the industrial scale, and perhaps equally horrific, the way the act was done in the name of the people without their true knowledge or consent. They never even had the chance to justify it; because through the technology we developed the citizenry didn't have to feel a single effect of the acts taken in their name. They never had to be the ones to pull the trigger. They only had to sit unseeing and unfeeling and unthinking, numb and dumb, while mass murder happened only miles from their homes.

So yes. Clearly murder is okay. If only we sit and consider the acts that sustain us and then judge whether that suffering is equivalent to the value we extract from it.

I think if everyone truly understood what was happening they would not tolerate it so easily.

<comment><USER8> This is a very reasonable point of view to me.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> Picture subtitles in Spanish? something wrong with my browser?

> Los manifestantes observan cómo los funcionarios limpian pollos sacrificados > en Mira Loma, California (Dania Maxwell / Los Angeles Times)

Google's translation: Protesters observe how officials clean up slaughtered chickens in Mira Loma, California (Dania Maxwell / Los Angeles Times)

> Los pollos de Les Kanawah están programados para ser sacrificados en Mira > Loma, California (Dania Maxwell / Los Angeles Times)

Google's translation: Les Kanawah chickens are scheduled to be slaughtered in Mira Loma, California (Dania Maxwell / Los Angeles Times)

<comment><USER10> "Los pollos (...) están programados para ser sacrificados (...)"

BTW, that's some awful Spanish. It reads like the chicken were robots programmed to be sacrificed because the subject of the scheduling/programming was inadvertently changed from the slaughter to the chickens :P

<comment><USER11> It's correct Spanish, it just throws off IT people because we use the term mostly for computer programming.

</comment></comment></comment><comment><USER12> [http://archive.is/JUfGx](http://archive.is/JUfGx)

</comment><comment><USER13> I wouldn't be surprised if the virus was human induced....similar to how the mad cow disease was caused by people feeding cattle a mix of cattle bones and meat.

I hope future generations look at our monstrosities and squirm in horror at how cruel and barbaric their ancestors were.

<comment><USER14> The thing about mad cow disease is that it's a prion disease, which operate very differently from viral and bacterial diseases. Prion diseases can just appear out of nowhere, and can be spread by consumption or contact with affected tissue/fluids. Viruses don't appear from nowhere but are rather subject to evolution. The way humans do make the spread of viral diseases worse is by cramming lots of animals together. So while humans aren't at fault for the existence of the virus itself, they can be at fault for its spread. It seems though that Newcastle disease is hard to control.

<comment><USER13> Yes a prion disease that is caused by forced cannibalism in animals. I understand, viruses evolve over time whereas prions are mutations of proteins...but my point is people are often directly or indirectly related to the cause and then they slaughter animals by thousands or even millions as in this case to cover their cause. PS: Not a very scientific argument but my general feeling. No need for the downvotes.

<comment><USER15> we prevent many diseases, we help many others, both directly and indirectly. its impossible to disambiguate things. Its almost as if assigning blame to something bad that happened is a pointless endeavour.

</comment></comment></comment></comment><comment><USER16> Turns out killing is now called euthanasia.

<comment><USER17> Rectangle vs. square. Euthanasia is a subset of all killing. It has the connotation of a medically supervised killing, usually done for reasons other than punitive measures. If your dog is sick with some incurable and painful condition do you go the vet to get killed or to get euthanized? Both are correct in a literal sense, but the connotation of the latter better describes the situation.

<comment><USER16> Killing a non-suffering animal is never euthanasia: it is eu because it is "sweet". Otherwise it is just thanatos: death.

No ned to sweeten something which is not bitter.

<comment><USER17> > Killing a non-suffering animal is never euthanasia

These animals were exposed to a fatal virus. I suppose it would be more humane to let them live until they exhibit sings of the disease, but this would lead to faster spread of the virus because infected birds have more time to transmit it. Testing every individual bird is logistically impossible, so culling those populations in infected areas is the only feasible way to stop the spread of disease.

> it is eu because it is "sweet". Otherwise it is just thanatos: death.

My point is that drawing a distinction between these things is nonsensical.

Executed. Put down. Murdered. Euthanized. Slaughtered. All these words fall under the umbrella of meaning "to kill" but they all have distinct meanings about the circumstances of the killing. Since this is an intentional killing for medical reasons, euthanasia is the most accurate word to use. You could say "slaughtered" but that would incorrectly indicate that these animals were killed for meat consumption. You could say "executed" but that would incorrectly imply that these animals were killed as some sort of punishment. You could just say "killed" but that is less specific and does not indicate that this killing was done deliberately for medical reasons.

> No ned to sweeten something which is not bitter.

It doesn't "sweeten" anything, the article makes it clear that the owners of these birds are not happy to have them euthanized.

<comment><USER18> I think you might be misinterpreting parent. He's just talking etymology, and he has a point. The eu- prefix means good/pleasant/easy, the rest of the word means death. So euthanasia, as a category of killing, implies that it's giving a good death, where otherwise there would be a bad death. A synonym would be mercy-killing. So you can argue that if the animal is not yet ill, it can't be euthanasia. Of course you could imagine non-standard scenarios where killing someone healthy might be considered euthanasia, like intentionally inhaling fire (thus rendering self unconscious) when you expect to burn to death. We're just talking semantics, not debating choices.

</comment></comment></comment></comment></comment><comment><USER19> Why is it that when it comes to nonhuman beings we turn to violence first? Then there's the hiding of the violence behind scientized euphemisms for bonus points.

<comment><USER20> Money.</comment></comment>


Ask HN: How long from zero coding experience to marketable skills - <AUTHOR> A friend of mine is working in a non-engineering field is curious to learn what it would take to enter the world of software.
They have almost zero experience of programming. Assuming full-time dedication (~50 hours a week) towards learning to code, how long do you think it would take to get to a point where they would be able to get a coding job, and what would be the best approach to doing so?
Learning Javascript? C++/Java? Is it necessary to study the basics of a CS degree or are there areas in which this is not necessary?
Presumably a good strategy would be to ensure that the first job is something that comes with the opportunity to learn general skills that would be open up further doors, as opposed to locking in working in a particular place or with particular frameworks. Are there any things to be wary of? <comment><USER2> It's almost impossible to give you an accurate timeframe.

How long it takes depends on

* What they're learning

* What their goals are

* Where they are located/Where they want to work

* Other marketable skills

Bootcamps are a good start but not a single bootcamp prepares someone for a job as a developer.

You get a job with a combination of skills (Shown through a portfolio of some kind) and connections.

Your friend needs to learn programming, create a portfolio, get to know the right people (Recruiters on LinkedIn are a good start, asking friends if they know anyone hiring is even better)

Most professions take years to learn, programming isn't really any different, it's just that we allow people with far too little skill to make or break while on a job.

Other skills also matter, does your friend have experience leading teams? Creating plans?

\---

* Decide what kind of programming they want to do

* Go to Udemy, pick any course with 4+ stars that include the above with the word "beginner"

* Take the course

* Create a GitHub account

* Create a ToDo in whatever language/toolset picked

* Join a forum dedicated to the language or toolset you picked

* Add your project to GitHub under an OSS license

* Pick a new course, also with the name "Beginner" in the title

* Pick something that exists and looks simple to create, and recreate it (This will take time, probably a few months for simple applications)

* Publish the result to GitHub (Make sure to never steal any images, texts, logos, etc.)

* Pick another two things to create

* Create them, publish to GitHub

Congratulate them, they're working on building a basic portfolio!

Now..

* Go back to your first project, improve it with the things you've learned with the other projects

* Publish the changes to GitHub

* Find an open source project, contribute something to it. Anything at all (Unit tests, documentation, bugfix, bugreport, whatever)

\---

* Make stuff

* Publish

* Reflect on what could have gone better

* Work on that

* Repeat</comment>


Critical U.S. Election Systems Have Been Left Exposed Online Despite Denials - <AUTHOR> https://www.vice.com/en_us/article/3kxzk9/exclusive-critical-us-election-systems-have-been-left-exposed-online-despite-official-denials <comment><USER2> It seems almost a given that these election software companies will have an access configuration snafu that leaves them compromised in way similar to Capital One or Equifax. But the article makes the case that the software makers and county officials are confused as to the basic definition of "air gap" (among other things):

> _"There's nothing connected to the firewall that is exposed to the > internet," Gary Weber, vice president of software development and > engineering for ES &S, told Motherboard. "Our [election-management system] > is not pingable or addressable from the public internet." This makes them > invisible to bad actors or unauthorized users, he said._

> _But Skoglund said this "misrepresents the facts." Anyone who finds the > firewall online also finds the election-management system connected to it._

> _"It is not air-gapped. The EMS is connected to the internet but is behind a > firewall," Skoglund said. "The firewall configuration [that determines what > can go in and out of the firewall]… is the only thing that segments the EMS > from the internet."_

I mean, it may very well be that the firewall setup is secure (at least in theory). But to insist that it represents an air-gapped system, as if "air- gapped" was just a marketing buzzword with no actual meaning, is a whole other level of incompetence.

(of course, the quoted VP may actually be maliciously deceptive, but I'd argue that for all intents and purposes, the difference between malice and gross ignorance is relatively negligible when it comes down to the county official enduser)

<comment><USER3> For context, Kevin Skoglund is "an independent security consultant who conducted the research with nine others, all of them long-time security professionals and academics with expertise in election security."

The VP is speaking in layman's terms to bolster the image of his company.

Even though the researchers are not allowed to probe beyond the firewall, others will not be subject to these constraints.

The federal govmt needs to step in to protect these systems as a matter of national security. Require the vendor to undergo third party security audits and not allow its use unless vulnerabilities are mitigated.

</comment></comment><comment><USER3> Why doesn't coordinated or responsible disclosure apply to election systems?

> The researchers reported the firewall IP addresses in August 2018 to the > national Elections Infrastructure Information Sharing and Analysis Center > (EI-ISAC)—a 24-hour watch center funded by the Department of Homeland > Security and operated by the Center for Internet Security, a nonprofit > established to develop and promote best practices in cybersecurity. The EI- > ISAC provides election officials with security threat information and > warnings, and told the researchers they would pass the information to where > it needed to go, but the researchers never got any follow-up from the EI- > ISAC.

> A spokesperson for the group would not tell Motherboard if the information > was disseminated to the affected counties, but the researchers did see some > county systems disappear from the internet. The Department of Homeland > Security, which has been working with states and counties since 2016 to > secure their election infrastructures, also declined to speak with > Motherboard about the researchers' findings.

</comment><comment><USER4> I can't believe this isn't getting more attention! Aren't the leaked NSA tools from 2017 designed to attack these exact Cisco firewalls?

</comment><comment><USER5> Don't worry, they've got a firewall so hot that no hackers can get close enough to hack it.</comment>


Gearbox's Pitchford: Steam may be "a dying store" in 5 to 10 years - <AUTHOR> https://arstechnica.com/gaming/2019/04/gearboxs-pitchford-steam-may-be-a-dying-store-in-5-to-10-years/ <comment><USER2> It has survived for many years. Steam sales are a huge draw, I doubt EA will ever sell games for less than the max they can charge. And to be honest, the only reason I played Borderlands 1 and 2 was because I got them for about $2 each on sale. Sure gearbox games can be fun, but the last game The Pre-sequel was just OK and didn't get good until the ClapTrap DLC. And That I got on steam sale too. Steam has a lot of Goodwill and EA has zero because EA always acts in scummy ways, like locking down content to their store when they weren't involved at all in the development. It is an old business model, there was a time when a company had market share in USA and not in Europe, so they flooded the EU by selling at a loss, their competitor bought up all their stock and resold it in the USA cheaper than the USA company, and they won the war because they had so much cheap product to under sell the USA company. Long term EA will have to sell games super cheap, or they'll miss out and that isn't in their SOP.</comment>


The Conundrum of Lucien Freud's Portraits - <AUTHOR> https://www.theatlantic.com/entertainment/archive/2019/12/the-lives-of-lucian-freud-explores-a-theory-of-portraiture/601471/ <comment><USER2> After reading this, I'm still not exactly certain what the "conundrum" is.

To me the conundrum is how one can write so many words about a topic that could actually make for an interesting article, while saying so little</comment>


Ron Graham has died at 84 - <AUTHOR> https://www.wsj.com/articles/ron-graham-dazzled-admirers-with-math-and-juggling-feats-11594994403 <comment><AUTHOR> [https://archive.vn/VcCNK](https://archive.vn/VcCNK)</comment>


YateBTS Introduces Its Cost-Effective Evolved Packet Core Product - <AUTHOR> https://yatebts.com/solutions_and_technology/evolved-packet-core-epc-lte-core-network-yatebts/ <comment><AUTHOR> YateBTS is a technology solutions provider that develops RAN and LTE Core Network equipment to meet the diverse needs of its customers. In line with the company's goal of providing the best possible services to its customers, YateBTS introduced the innovative EPC technology and recently published an article to explain the technology and its wide range of features and benefits. Evolved Packet Core (EPC) has become increasingly popular since its emergence with early adopters witnessing remarkable improvement in their quality level of service delivery. The functionality, durability, and ease of use of EPC have helped it to gain worldwide acceptance. Unfortunately, millions of businesses, including tech websites, are yet to harness the benefits of Evolved Packet Core (EPC) and this is where is YateBTS is looking to change the narrative, especially with the recently published article. Titled "Evolved Packet Core (EPC)," the article aims to throw more light into what EPC is all about, along with its components, and the solution equipment provided by YateBTS as a company. The article talks about EPC's representation of the LTE core network and the functions performed by the technology. Some of such functions include authenticating subscribers, aiding mobility management, and determining the subscribers' access to the network. The article also details the network architecture and the nodes that form the foundation for the architecture. PGW (PDN Gateway), HSS (Home Subscriber Server), PCEF (Policy and Charging Enforcement Function), and SGW (Serving Gateway) are some of the nodes mentioned. Other topics covered in the article include Core Network Background - the evolution of Circuit-switching to Packet-Switching and the relevance of Quality of Service (QoS) to operators and users. The article also details the Evolved Packet Core products offered by the company, including YateHSS/HLR as a solution for HSS/HLR and YateUCN (Unified Core Network).

</comment><comment><USER2> This is interesting!</comment>


Ask HN: What's your experience with OKRs or other performance managing criteria? - <AUTHOR> I'm reading John Doerr's <i>Measure What Matters</i> and I like it so far. Have OKRs worked for you? If not, have you found any approaches that work best? <comment><USER2> OKRs only work when they're updated as business needs change.

In one job I've held with explicit OKRs, they worked well because the job remained pretty much the same.

In another job, my OKRs created at the beginning of the year, moved further and further from what I was actually doing over the year. My boss didn't let me change them over time, and by the end of the year, he put me down for not meeting the OKRs. (This gave him an excuse not to give me an annual raise.)

They're another tool in managers' boxes, both useful for actually improving their employees -- or for picking favorites.

</comment><comment><USER3> They are useful for getting wide company alignment but should not be used for any kind of performance management.

</comment><comment><USER4> not so great, in a big company where OKRs trickle down you are judged and dependent not only by your own (personal or team) OKRs but also by your sibling teams OKRs- below, above and around you.

This means that you can deliver a successful product and still not be appreciated since another team didn't integrate it on time or did not deliver a crucial part to your team.</comment>


The world might run out of people - <AUTHOR> https://www.wired.com/story/the-world-might-actually-run-out-of-people/ <comment><USER2> That's interesting. I've heard the exact opposite opinion somewhere, that the education of women doesn't have as big an effect as anticipated by the models, especially in Africa.

This graphs shows it

[https://ourworldindata.org/grapher/womens-educational- attain...](https://ourworldindata.org/grapher/womens-educational-attainment- vs-fertility)

For some countries like India or China, the effect is very strong. Just a few years of education drastically reduce the number of children, but for other countries like Uganda or Zambia the effect is much smaller. The original source where I first heard this (which I sadly can't find again) claimed this was due women wanting almost as many children as men in these countries.

<comment><USER3> That's because it has to do with the death rate of children.

On average most woman want two children. But when a lot of them die they will get more (average of 6 around 1800).

The combination of enough food, education and good health care are why less babies are born.

So if you live in a country with good education but lack of food most women will still have more babies than two.

<comment><USER4> > On average most woman want two children. But when a lot of them die they > will get more (average of 6 around 1800).

I don't believe that's true across cultures. Even in North America you've got social groups and organizations that are continuing to make babies like crazy.

<comment><USER5> Cultures have nothing to do with it.

See Hans Rosling's talk on this [1] or see it yourself in data [2]. As soon as education, medicine, economic situation improves, you get a drop to ~2 children per woman across all cultures.

[1] [https://www.ted.com/talks/hans_rosling_religions_and_babies](https://www.ted.com/talks/hans_rosling_religions_and_babies)

[2] [https://www.google.com/publicdata/explore?ds=d5bncppjof8f9_&...](https://www.google.com/publicdata/explore?ds=d5bncppjof8f9_&ctype=b&strail=false&nselm=s&met_x=sp_dyn_le00_in&scale_x=lin&ind_x=false&met_y=sp_dyn_tfrt_in&scale_y=lin&ind_y=false&met_s=sp_pop_totl&scale_s=lin&ind_s=false&dimp_c=country:region&ifdim=country&iconSize=0.5&uniSize=0.035)

<comment><USER4> While I see that there is a definite trend, if culture had nothing to do with it, why would the Israel and Faroe Islands outliers exist with many more children? And I see a ton of groups there that have the highest life expectancy and < 2 children, all Asian countries. That seems to indicate that 2 is not in fact a magic number at all.

<comment><USER6> >why would the Israel and Faroe Islands outliers exist with many more children?

Most likely answer, religion. Successful religions grow one of two ways, and generally have encodings for both. That is they tend to have means to convert the non-religious, and secondly, and importantly in this case, have 'strong' rules on having kids. For example, in the old testament Onan was killed for 'spilling his seed' and not impregnating his dead brothers wife.

That said, even in ancient times it appeared that birthrates did go down, as in Greces case, their city state succeeded. This left them open from attack and cultural take over by outside nations and ideals with higher birthrates.

In the modern world we are coming to the point where human labor is not as necessary and has been supplanted by machine labor. Also machine protection, in our weapons of war. This could allow a nation/culture to shrink dramatically while still being able to defend against outside threats. If such a shrinking culture were one that 'grew' by spreading its message to other cultures it may succede to grow and shrink the entire worlds population at the same time. These ideas of disappearing utopia cultures are often touched by science fiction.

<comment><USER4> Oh, I understand all that, but the two arguments made earlier was that culture had nothing to do with it (I'd say religion is in fact part of culture), and that societies move towards having two kids, which doesn't seem to be the case, it would appear that it actually goes lower, much lower.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Our economy and intellectual progress is massively predicated on specialisation of labor. When I consider any single aspect of our life, even something as "simple" as how elevators work, it's astounding the amount of complexity that goes into it. Complexity that we can handle because we divvy it up amongst many many people who are completely specialized in understanding and fulfilling that task.

Gradual increases in population don't really scare me. Technological progress has always scaled with population, and technology can free us of natural resource constraints. But in a world of shrinking population, entire fields of practical human knowledge and know-how can be lost forever.

<comment><USER8> Can you give an example of why this is bad? What more do we really need in terms of technology, to survive as nations and be happy? Could this point in our achievement be enough?

Maybe a drought of elevator specialists decreases the amount of elevators we can have. We have to walk up stairs more often. Not ideal. But maybe more people spend less time having and raising kids and more time working on themselves. Mental health improves and people are more compassionate toward themselves and others. I would choose that world, not actively fight against it.

<comment><USER6> >What more do we really need in terms of technology, to survive as nations and be happy?

What timeline are we talking about.

> Could this point in our achievement be enough?

To ensure eventual extinction, yes.

Modern technology is wholly dependant on a great number of unstable and unsustainable systems. Fossil fuels are the best example of a great technological boost that is destroying our atmosphere. Renewables, while so much better, are not without their drawbacks at a world civilization size. Still, it could create a nice, clean, and happy __doomed __world.

Below us vast volcanoes, things not seen for tens of thousands of years, wait to explode below us threatening to blot out the sun for a decade (hope you don't depend on solar panels). Above us rocks the size of mountains race through the blackness of space at insane speeds waiting to find a gravity well and vaporize what is at the bottom of it. There exists threats, ones we've only come to realize exist in the past century, that can wipe mankind off earth in the blink of an eye. The solution to most of these is making sure we just aren't on earth, and become a spacefaring civilization. For that we will need technology far beyond what we have now.

<comment><USER8> It's almost as if we are in Omelas, our worldwide festival of novelty and technology relying on a hidden destruction of the environment we do not pay attention to except once in a while (not to mention the countries.)

I don't believe space travel is worth it if we get there through war, interpersonal alienation and violence required by the only current system poised to do it. Sometimes we have to entertain the idea of letting go of preventing every possible bad outcome and focus on what is needed in the current moment. Regrettably I'm not the most persuasive philosopher; Gil Scott-Heron has a song called "Whitey on the Moon" if one wants to think more poetically about it.

</comment></comment></comment></comment><comment><USER9> I haven't heard of a specie disapearing primarily because it didn't have enough babies.

Even the giant panda, before arriving to this situation, had seen their forests devasted by us.

So at best, I expect our specie to mess up in some big ways, then maybe, the finish blow will be reproduction.

Yet I doubt it.

First, other threats have a way higher likelyhood. India has no water, terrible social tension, instable border situations and the nuclear bomb. We killed 60% of the insects. There are microparticules of plastic everywhere in the oceans. Not to mention climat change, our mad scientist attitude towards everything, and the systematic conversion of limited natural assets into short term cash machines.

Second, fertility is something we have been working on for some time now, and our mad, but smart, scientists are pretty good at it.

Lastly, I even doubt that natural fertility will ever be a permanent problem. Nature has cycles to regular species population, and may impose on us some drastic mesure, but like all cycles, it goes back to where it was.

<comment><USER10> Calhoun's "Beautiful Ones" study from the 1960s is the just-so story here. A rat environment is built, becomes overpopulated, and eventually the children stop breeding and the colony dies out. However, it's of dubious predictive value.

<comment><USER11> As much as the Internet loves the Rat Park study, it's important to note that it has never replicated; several groups tried and failed. Until more information comes along, it should be considered another victim of the replication crisis and not taken too seriously.

</comment></comment></comment><comment><USER12> Sigh. Someone has a book to sell by going against conventional wisdom, and the classic approach of taking a small trend and drawing a huge long straight line through it. It's not really surprising that this has happened, given the extent of efforts to reduce birth rates as a way out of poverty.

<comment><USER13> This is the same argument that has been used for decades and centuries to worry about population explosion, though. Was that mere book selling? We've now seen a trend of below replacement in places like Japan lasting for decades now, and they've luckily been able to change their society to be more welcoming to immigrants in order to compensate, but that only works if there are countries with higher birth rates to compensate.

<comment><USER14> Or climate change? (Ducks)

 _PS: I realize now that people downvote not based on the content of the post or the argument but based on whether they don't think the argument should be made because they dont like the conclusion_.

<comment><USER13> No, climate change was predicted well before a temperature change was observed (i.e. over 100 years ago), and it was based on the fact that the world burns enormous amounts of coal and the fact that CO2 has a certain infrared absorption spectrum. It was a prediction based on basic physics before an empirical observation of the global result was seen.

But there is something analogous: look at birthrates, and you have a pretty good idea about which direction the population will trend to within a few decades. It's a pretty straightforward, fundamental relationship.

<comment><USER14> Right, but like all things it ignores other variables, such as for example the sun going into a cooler period or the gulfstream or el nino changing.

Obviously the former is global while the latter likely won't counteract the warming effect much. But it's extrapolating based on the assumption that we know there won't be any other mechanisms — feedback, collapse, new phenomena being activated by this like the growing of new phytoplankton-like organisms or trees outside human habitats which automatically sequester trillions of tons of carbon back)

[https://www.theglobeandmail.com/opinion/we-are-making-the- gl...](https://www.theglobeandmail.com/opinion/we-are-making-the-globe- greener/article26147272/)

[https://uanews.arizona.edu/story/dead-forests-release- less-c...](https://uanews.arizona.edu/story/dead-forests-release-less-carbon- into-atmosphere-than-expected)

We can't do it ourselves:

[https://www.businessinsider.com/so-much-co2-planting- trees-c...](https://www.businessinsider.com/so-much-co2-planting-trees-cant- save- us-2017-5?utm_content=buffer367e0&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer- biuk&r=UK&IR=T)

And

[https://www.sciencedaily.com/releases/2010/05/100503161435.h...](https://www.sciencedaily.com/releases/2010/05/100503161435.htm)

I happen to think that the extrapolation is going to closely approximate what will actually happen, but I could be wrong.

<comment><USER15> I think your understand of the issue is a bit fuzzy.

For example, the business insider article seems to imply that we can't "plant our way out" using trees. But you interpret this to mean "we can't do it ourselves". But no one ever said planting trees is the only thing we can do to stop climate change. We can also: change our crop and animal yields, use less fossil fuels, etc.

Same thing with the arizona article about dead forests releasing less CO2 than expected. That isn't to say that they don't release any. And it also isn't to say that live ones release more (live trees consume CO2 and produce O2, if you recall). That article is from 2013, so any climate scientist is going to already be using those findings in their models, so it's ridiculous to assume that a 6 year old article with a minor tweak to a variable means that today's cutting edge scientists are uninformed.

[edit] I'm not even gonna touch the thing about the "cold sun" conspiracy. [http://www.realclimate.org/index.php/archives/2017/01/the- na...](http://www.realclimate.org/index.php/archives/2017/01/the-nasa-data- conspiracy-theory-and-the-cold-sun/)

<comment><USER14> I'm saying climate scientists were missing a lot 6 years ago and 30 years ago, and it's unreasonable to expect that exactly now they finally are "totally informed". There are tons of external factors and it's hubris to think the map is the territory when it comes to such a complex system as the entire planet!

Or how about the entire solar system... I am not talking any conspiracies. I am saying our global warming may in useful and actually happen to coincide with a cooling period by the sun:

[https://www.indiatoday.in/education-today/gk-current- affairs...](https://www.indiatoday.in/education-today/gk-current- affairs/story/sun-is-likely-to-cool-down-causing-a-mini-ice-age-on- earth-1167580-2018-02-12)

[https://www.livescience.com/61716-sun-cooling-global- warming...](https://www.livescience.com/61716-sun-cooling-global-warming.html)

Stop assuming the worst of your discussion partners :)

And of course the above headlines ard also hubris because we don't even know if the sun dimmed a lot or if that was the main cause of the little ice age:

 _Foukal emphasized this dimming might not have been the only or even main cause of the cooling seen during the little ice age. "There were also strong volcanic effects involved — something like 17 huge volcanic eruptions then," he said._

I prefer to talk about CO2 pollution as a pollution problem, to avoid exactly this argument about temperature predictions.

</comment></comment></comment></comment></comment></comment></comment><comment><USER16> Analogy: If someone on a diet keeps losing weight, they will disappear too. But outside pressures and incentives change, and there's also internal regulation. Your weight will stabilize sooner or later. I think the same goes for populations. When people become scarce, making more of them will be rewarded in some way or another.

I'm not sure the authors believe humanity will celibate itself out of existence. But I'm sure they'll sell more books with "extinction" rather than "stabilization" as a headline.

</comment><comment><USER17> > "In roughly three decades, the global population will begin to decline," > they write. "Once that decline begins, it will never end."

I'll give you very long odds against.

<comment><USER18> Yea, the debate about the UN's demographic projections are interesting, but the framing that the world is going to _run out of people_ is dump, and kinda distracts from the interesting parts.

8 billion people is still a pretty crazy number of people.

</comment></comment><comment><USER19> Quoting Spandrell:

At this moment, every single human population with an IQ over 95 has a fertility rate below replacement; and the places where the most intelligent and productive people tend to live, big cities, have generally fertility rates below 1. Not below 2, replacement, but below 1, half of replacement. As I've said again and again, big cities today are IQ shredders, where the genes that code for high intelligence go to get shredded in the corporate and bureaucratic rat-race, depriving humanity of the biological building blocks for a better future.

<comment><USER20> This doesn't fully explain why humans don't want to have a lot of kids. Have you ever been around kids? They're really a pain in the ass, especially if they're boys. (For instance, as a single guy, I'm _far_ more likely to be interested in dating a single mother with girls than one with boys; little boys are just too destructive and disobedient.)

Smart people aren't having so many kids now because they don't have to. If they don't have a religion telling them they need to, and they have a good career and a very comfortable lifestyle that affords, why would they want to go to all the trouble that raising a lot of kids requires?

In addition to that, kids are very costly in today's society, and with adults not living near their families so much, you don't get any help with your kids when you need it, so that makes it even more unattractive.

Having a lot of kids made sense back in the days when you needed the help on your farm, and your whole extended family (or village) lived together and could collectively share the burdens of child-rearing. Now, it just doesn't.

The answer to me is simple: we need to outsource child-rearing to the State, as shown in the novel "Brave New World" where children were made in factories and then raised by trained professionals.

<comment><USER21> > Have you ever been around kids? They're really a pain in the ass, especially > if they're boys.

Suck it up. What, do you want having kids to be as seamless as an Uber Eats order? It's not. It's hard work. I'm sure your parents gave up on a lot to have you, too. That's part of being an adult.

<comment><USER20> >That's part of being an adult.

As countless adults these days have proven, no, it's not. You can just opt out of the whole thing.

<comment><USER22> Which is why we have the problem at hand.

<comment><USER23> > problem at hand

Is it a problem? I would submit it is a solution.

<comment><USER20> It's a problem if you don't want your economy to collapse because of too many elderly people who can't work and not enough young people to keep things going for them all.

</comment></comment></comment></comment></comment></comment></comment><comment><USER24> I'm somewhat surprised by the tone of surprise in this article/interview.

While I still frequently see references to "out-of-control population growth" among laypeople here on HN or on Twitter, often in reference to Africa, I have long gotten the impression that the scientific and political communities have turned to models showing drastically lower birth rates coinciding with increased development.

Lower infant mortality, access to birth control, and social safety nets that do not rely on immediate family are obvious factors here.

This is umabigoulsy good news, unless you posit a harm from not being born. In any case, it's unlikely that humanity is going to disappear of its own choosing.

<comment><USER13> The slowing of the birthrate to manageable levels is very good, but too much of that (i.e. below replacement) leads to an inverted age pyramid, which is NOT unambiguously good.

The fact that birthrates are falling and many countries will be left with a huge number of elderly folk without enough young folk to take care of them is not unambiguously good, particularly when it happens everywhere so there's nowhere to import young immigrants from.

<comment><USER14> An inverted age pyramid can be just fine if automation picks up the slack and causes productivity per capita to soar. The great thing about automation is that it's always improving, never going back (except when old equipment gets retired). Once Tesla improves feature X it's rolled out to all cars at once, for instance.

<comment><USER6> > if automation picks up the slack and causes productivity per capita

This is only true _if_ the income disparity is not out of control. Current trends show us that income disparity is increasing where the super rich gain everything, and the poor are screwed without some kind of income redistribution (high wealth taxes for example).

<comment><USER14> That's why I'd like to see us move in the direction of:

      UBI
      Automation
      Open Source Software

And I am putting my money where my mouth is, for 7 years:

[https://qbix.com](https://qbix.com)

[https://intercoin.org](https://intercoin.org)

</comment></comment></comment></comment></comment><comment><USER25> I didn't know this was controversial? The UN numbers referred to show that this is a likely outcome already on page 2.

At most the author seems to disagree with UN about ~1 billion people. Well within the uncertainty.

[https://population.un.org/wpp/Publications/Files/WPP2017_Key...](https://population.un.org/wpp/Publications/Files/WPP2017_KeyFindings.pdf)

</comment><comment><USER26> In the long run more agreeable (in a Big 5 sense) people have more children and agreeableness is fairly heritable so don't expect the decline in birth rates to last forever.

[https://hopefullyintersting.blogspot.com/2018/05/falling- fer...](https://hopefullyintersting.blogspot.com/2018/05/falling-fertility- rates-shouldnt-be.html)

</comment><comment><USER27> I've always kind of felt that man kind would go the way of the Mice Utopia experiment - [https://www.returnofkings.com/36915/what-humans-can-learn- fr...](https://www.returnofkings.com/36915/what-humans-can-learn-from-the- mice-utopia-experiment)

</comment><comment><USER28> The article makes it sound like a journalist traveled around 26 countries (~10% of countries), interviewed only a handful of people in each (the ones they could reach), and concluded that UN's demographic projections - formulated with tons of data, academic methodologies, and carefully crafted by statisticians and global development experts - are wrong

The article and book sound pretty biased and clickbaity from what I can tell so far.

I'll stick with the UN for now ;)

</comment><comment><USER29> That ended rather abruptly, and never even mentioned decline or running out.

</comment><comment><USER30> In the short term, this is good news. Sub-replacement fertility is not zero; if the world population were to reduce by 1% per year for a few decades, it would reduce the pressure on the Earth's ecosystems and make some space for a better life for the remaining people. The population can always increase again.

</comment><comment><USER31> This is indeed the leading theory about where the world will be heading over the next couple of decades. But I think the answer really depends on the culture of subpopulations.

In the USA for example, republican ruled states have more babies than democrat ruled states [1]. Or in israel, the fertility rate of the orthodox haredi minority is very high with 6.9 children per woman in 2017 (children not childbirths) compared to the non-haredi per-woman value of 2.4 [2].

So where will this lead us to? I think we'll experience growing percentages of conservatives/orthodox populations across the world while the liberal populations will shrink. Overall there will be a shrinkage but the conservative population growth might eat up that shrinkage and one day we might have overall growth again. But predicting the future is hard of course. For example, you could have the conversion of the conservative mindset towards liberalism which is happening in the entire world since maybe 100 years or such eat up every population increase of the conservative minorities.

Or you could have sci-fi tech that influences population infertility quite much, e.g. with artificial uteruses. With them, minorities that value large amounts of children might grow quicker and governments could want to influence how many children are being grown to fight population declines.

Or it might be figured out how to prevent/reverse aging and the number of "natural" deaths will sink to zero. Then your population will start growing again even without the contribution from conservative/orthodox minorities as the number of babies would still be larger than the (low) number of deaths due to accidents, crimes, etc.

[1]: [https://www.fatherly.com/health-science/republicans-have- mor...](https://www.fatherly.com/health-science/republicans-have-more- children/) [2]: [https://en.idi.org.il/articles/20439](https://en.idi.org.il/articles/20439)

<comment><USER32> One might point out that orthodox-religious and Republican children are a major source of liberals.

<comment><USER31> Exactly, that's what I've meant with "conversion of the conservative mindset towards liberalism". Liberal groups have high capabilities of converting conservative people towards them while conservative groups have high capabilities of reproducing.

I don't worry about liberals for that reason: the more conservatives, the larger the pool of people they can convert to their ways. Liberalism originated in a world that was far more conservative than the conservatives we have today, and they still managed to get where we are now. I'm definitely not worried.

</comment></comment></comment><comment><USER33> What I didn't see mentioned in the article is the 3rd possibility: that the population will grow but eventually reach a stable plateau. I don't know the number (<12 bil maybe) but this was argued by Hans Rosling.

Can any demographers weigh in?

<comment><USER34> IIRC the UN estimates in the early 2000s said it was going to top out at 11 to 12 billion and plateau there. This article is a much rosier estimate and expects us to top out at 9 billion or so before rapidly declining.

</comment></comment><comment><USER35> Optimal carrying capacity would be 1 billion.

We were half a billion in 1600s.

If everyone had 1/2 surviving child, we will start coming down in about 200 years. Would love it if someone smarter than me can do that mathematical projection?

We need everyone to have 1/2 child so we have genetic diversity.

</comment><comment><USER36> Important to note that these two authors wrote another book in 2013, claiming that Canada would never elect a Liberal government again, because of demographics or something.

This was 18 months before the Liberals won a massive majority.

[https://www.amazon.ca/Big-Shift-Canadian-Politics- Business/d...](https://www.amazon.ca/Big-Shift-Canadian-Politics- Business/dp/1443416452)

</comment><comment><USER37> Better data from Wikipedia: [https://en.wikipedia.org/wiki/Sub- replacement_fertility](https://en.wikipedia.org/wiki/Sub- replacement_fertility)

</comment><comment><USER38> I've not read the book yet (it only came out yesterday), but I think there are a few issues with the piece:

First, we should look at the authors of the book. Again, I've NOT read it, so this is based on a bit of internet sleuthing, and nothing more. The authors are primarily writers and news commentators in Canada. John Ibbitson writes for _The Glode and Mail_ and is a political commentator[0]. Dr. Darrell Bricker is a pollster, political commentator, and author of a few books focusing on Canadian current events and issues[1]. I cannot speak for their personal knowledge on Earth's population nor the accuracy of a book that I have not read. However, based on their Wikipedia bios, I can conclude that they are not career professionals in global demographics. Speaking personally, they give me a Robert Reich/Thomas Friedman vibe more than anything.

Now, specifically about the _Wired_ interview, there are some things that stand out:

> And then I saw one woman reach in and pull out a smartphone, look at it, and > put it back. And I realized, here we are in a slum in Delhi, and all these > women have smartphones. Who can read. Who have data packages. And I was > thinking, they have all of human knowledge in their hands now.

Depending on the time and place that the authors were in Delhi, this may be incorrect. _Free Basics_ was recently shot down in 2016, so if they were there after that decision, they are correct [2]. If they were there before that ruling, then it is highly likely that these women were only able to access Facebook and not the internet at large. In addition, though the _Wired_ interview was very short, they may not have had anything other than basic phone functionality. I would love to know more about the actual data on how internet penetration occurs in the lower castes/classes of India.

> The UN says they're already baked into the numbers. But when I went and > interviewed ... Wolfgang Lutz in Vienna, ... he walked me through his > projections, ... All he was doing was adding one new variable to the > forecast: the level of improvement in female education. And he comes up with > a much lower number ..., somewhere between 8 billion and 9 billion.

Based on some quick googling of Dr. Lutz, I would be a fool to disagree with his expert assessments [3]. He holds two doctorates, one in Demographics from U. Penn, and one in Statistics from U. Vienna and has been working in global demographics issues since 1985. I've not researched him in depth, but he seems like a level-headed person without much of an 'agenda'. He is a recent editor of a 1000+ page tome titled "World Population and Human Capital in the Twenty- First Century"[4]. So, if Dr. Lutz's believes that just adding in female education will drop the world population by ~two billion babies, then I would be loathe to argue with him.

> In the Philippines, for example, fertility rates dropped from 3.7 percent to > 2.7 percent from 2003 to 2018. That's a whole kid in 15 years.

I'm not certain what 3.7 _percent_ fertility means. I believe that there may be a mis-transcription here. What I think the authors mean is that the Philippines had a _birth rate_ of 3.7 children per woman. For reference, Yemen is an even more extreme example:. In 1986, the fertility rate was _over 9_. Today it stands at 4; so 5 children in 30 years.

Overall, the _Wired_ article stands as a good promotion for the recently released book. However, I feel that listening from Dr. Lutz himself may be a better and more productive use of time [5][6].

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

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

[2] [https://www.cnet.com/news/why-india-doesnt-want-free- basics/](https://www.cnet.com/news/why-india-doesnt-want-free-basics/)

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

[4] [https://global.oup.com/academic/product/world-population- and...](https://global.oup.com/academic/product/world-population-and-human- capital-in-the-twenty-first-century-9780198703167?cc=us&lang=en&#)

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

[6] [https://www.youtube.com/watch?v=FQJ7EApyi-A](https://www.youtube.com/watch?v=FQJ7EApyi-A)

</comment><comment><USER39> I was expecting a link to the National Inquirer, and not Wired.

Utter nonsense

</comment><comment><USER40> A world with declining population. Full of old people due to population pyramid inverted. Full of stupid, and impulsive, and likely religious zealots, as those are the only groups with fertility rates above replacement level.

<comment><USER41> >Full of stupid, and impulsive, and likely religious zealots,

They are so stupid, yet everyone else let themselves be out-bred by them? I think if that happens in the long-term, it more or less suggests "religious zealots" have adapted better.

<comment><USER20> It's not stupid to be "out-bred": you're enjoying your own personal life more by keeping more resources for yourself, rather than sacrificing your time and resources on kids with the goal of continuing your family line. Your kids, grandkids, and descendants aren't likely to be of much help after you're dead.

This is an individual vs. society issue: having few kids is better at the individual level, but for society it's not sustainable unless we can figure out how to significantly extend lifespans (i.e., reduce the death rate in-line with the reduction of the birthrate).

<comment><USER42> One may argue that if you expand "for society" to a worldwide "for humankind", it's perfectly sustainable not to have kids at the current population level.

I think it's a safe assumption that those with religious dogma and those in regions of high child mortality will continue to have many kids, one way or another. The "educated" non-religious class is probably the only one that has a real choice to make. If they keep up reproducing at 2.1x replacement level while everyone else exceeds that level, the worldwide population is just going to continue to grow and _then_ we're in real trouble.

I'm perfectly happy to let "my society" be taken over by "the other kind" who out-reproduced me and my peers. One way or another, we'll have to stop growing as a species, and one group's excesses have to balanced out by another group's shortfalls.

<comment><USER20> The only problem with that (if you care about what happens to humanity after you die) is that it will likely result in a major collapse of society. The religious nuts and those in regions of high child mortality (which means they're all poor and uneducated) aren't going to be able to maintain or advance a technological society. They can breed, but that's not enough to know how to keep complex systems running, and things will collapse just like Ancient Rome, with technology being lost and everyone going back to being feudal serfs, or worse.

Personally, I just don't see a way to avoid some kind of major collapse of society due to one or more of the many factors facing us. For this issue, I think greatly improving human longevity is absolutely necessary, and if we don't do that, we're going to have another Dark Ages of some kind.</comment></comment></comment></comment></comment>


Smalltalk: Swimming with the fish - <AUTHOR> http://simberon.blogspot.nl/2013/01/swimming-with-fish.html <comment><USER2> The analogy given in the article is pretty accurate. The Smalltalk environment is unique in that it allows very easy access to the libraries, the IDE and the language's internals (including the compiler!). The Smalltalk debuggers are among the best ones I have ever used.

(I'm mostly speaking out of my experience with VisualWorks, a commercial Smalltalk implementation, but other implementations are similar.)

I would greatly recommend everyone to give Smalltalk a try. The IDEs are pretty ugly and cumbersome, but don't let that put you off. Get a feeling of the minimalism of the programming language and the pure form of object orientation. Dig through the code of the standard library — it's quite easy — and check out the implementations of TrueClass, FalseClass, BlockClosure etc.

Unfortunately, many parts of the Smalltalk IDEs are horribly outdated and make Smalltalk a very poor choice of environment to use for production code.

Smalltalk lives in its own little world, and the tools that you'd normally use during day-to-day development are integrated in the IDE, and there is virtually no possibility of using external tools. The text editors are pretty bad, and you can't use vim or emacs or Sublime Text. The Smalltalk VCSes are particularly horrible. For version control, you need to use systems such as Monticello or Store, both of which make me cringe just thinking about them again.

I also feel that Smalltalk coders get locked in into their environment. Many Smalltalkers that I have met are quite unfamiliar with what is happening in the outside world. Most of them have never heard of git, for example (and quite a few did not know what Subversion was). When an interesting technology enters the Smalltalk world, people seem to rush to reimplement it in Smalltalk (yes, there is STON — Smalltalk Object Notation).

These were the main reasons why I quit my Smalltalk job. A sad decision, but one that was unavoidable in the long run.

Smalltalk is a nice language and has IDEs with some very nice features that I would _love_ to see in other environments, but it is also severely lagging behind in many other areas. I would like the Smalltalk community to be more aware of what is happening outside and build bridges. Without that mindset, I feel Smalltalk will simply fade out completely.

Source: I used to be a professional Smalltalker for almost three years.

<comment><USER3> _> many parts of the Smalltalk IDEs are horribly outdated_

My opinion is the opposite: I find the IDE in Pharo to be simple and very elegant, far more human-friendly than any I've seen in 'mainstream' languages. And this version of Smalltalk is under heavy development, with a push towards even greater cohesion. This small corner of computing is seething with hot, cutting-edge activity.

 _> The text editors are pretty bad_

Well, you ought to know that Smalltalk is focused on relatively small snippets of code, held together in consistent OO structures. There's hardly any point in fancy text-editing features when your methods are generally 8-12 lines long!

<comment><USER4> > Well, you ought to know that Smalltalk is focused on relatively small > snippets of code, held together in consistent OO structures. There's hardly > any point in fancy text-editing features when your methods are generally > 8-12 lines long!

This! And also, in Pharo 3.0 there's being a huge push towards better text editing, although I've never ever needed more than what Pharo 1.0 did already provide...

You don't work with text in Smalltalk.

</comment></comment></comment><comment><USER5> A while back I backed an IndieGoGo project dedicated to bringing Smalltalk to the JVM: [http://www.indiegogo.com/projects/redline- smalltalk-v1-0](http://www.indiegogo.com/projects/redline-smalltalk-v1-0)

I really hope this project pans out, because I would love to be able to program in Smalltalk for practical purposes.

(In fact, even the _thought_ of being able to write a single application in both Lisp (Clojure) and Smalltalk (Redline) is making me giddy. We're still a long ways from this dream, but perhaps it'll be possible one day.)

<comment><USER6> It is cool, but redline doesn't have the environment of smalltalk, just the language. Which, arguably, misses a LOT of the point of using smalltalk.

<comment><USER7> That isn't true.

[http://www.redline.st/discover/is-it- smalltalk.html](http://www.redline.st/discover/is-it-smalltalk.html)

</comment></comment></comment><comment><USER8> Articles about how great Smalltalk is usually remind me of articles about how great the Lisp Machine was. And there is a lot of merit to an entire system, hardware and software, designed to operate in a high-level language.

My complaint is that neither of these things is coming back in a relevant way.

Perhaps the biggest shift in software engineering in the last decade or two is the fact that no one writes entire systems anymore. We've moved to a system of (somewhat!) interchangeable parts. If your thoughtfully constructed, delicately handcrafted utopia doesn't play well with tools the user is used to and libraries the user needs, no one will use it in the real world.

Smalltalk, though a wonderful entire system in the 80's, hasn't kept up with computing progress. Most of its best features made it into other languages (Ruby and Obj-C are the premier examples), languages which aren't so opinionated about what OS you run, what IDE you're using, what language adjacent programs are written in, etc.

Much like Lisp Machines, the rest is left to rot, and incite wistful blog posts by old hands. And pretty much everyone else ships code in other languages.

<comment><USER9> There is great danger in learning OOP with Smalltalk. Everything fits together so elegantly, the first time I opened a book about C++, I closed it in disgust (after seeing the bit-shift operator being used for console output, wtf?!), only to give the language a second chance 8 years later. I even learned Java before giving C++ a try.

When a young programmer asks me for advice about the next language to learn is, my advice is to go for the language that feels most alien. C++ won't enlighten a Java programmer significantly. Forth will.

<comment><USER10>
      > I even learned Java before giving C++ a try

I must admin from all the stuff I saw on the internet I am now scared even try to learn C++. I think it is the looks as a least desireable language to learn for me. Which sucks a bit because there is position at a company I wouldn't mind work for.

<comment><USER11> Learn C first! You'll understand why C++ is what it is and you'll also get the skills needed to contribute in a lot of open-source projects.

<comment><USER12> Please don't! Learn Modern C++ instead, otherwise you will be damaged with Cisms in C++ land.

<comment><USER9> Would you like to elaborate on that?

<comment><USER12> There are lots of C constructs that are considered bad practice in C++

\- null terminated strings

\- plain vectors

\- manual management of resources (memory, files, db connections, locks...)

\- C style casts

\- pre-processor instead of using inline/const/templates

\- the C subset of C++ it is also not 100% compatible with C, there are a few cases with different semantics

\- since C99, new language constructs are added via macros, instead of keywords

\- no use of namespaces

\- lack of safety of parameters that can be changed (pointer vs reference parameters)

The best way to learn C++ is to read books like "Modern C++ Design", "Programming -- Principles and Practice Using C++" and the recently published "Tour of C++".

<comment><USER13> I have to take issue with your inclusion of "Modern C++ Design" in a reading list about learning C++. If you're new to C++, that is exactly the sort of thing you _shouldn't_ be reading.

"Modern C++ Design" is really intended for advanced C++ programmers only. I don't feel it gives a very good impression of the language to new developers - there are so many awful hacks in that book.

It's the sort of thing that you should hold off on until you have the experience with the language necessary to be wise about when such techniques are appropriate.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><AUTHOR> I have been facinated by Smalltalk but the language drives my kinda crazy. I have read the 'Blue book' ([http://wiki.squeak.org/squeak/64](http://wiki.squeak.org/squeak/64)) and tried Pharo ([http://www.pharo-project.org/home](http://www.pharo- project.org/home)), Amber ([http://amber-lang.net/](http://amber-lang.net/)) and GNU Smalltalk.

While I really like Smalltalk, for some reason it does not work for me as a web development platform (and the web is my platform), or maybe I just don't grasp it.

I tried Seaside ([http://www.seaside.st/](http://www.seaside.st/)) but the URLs it generates are not acceptable (unfortunately) and I find their component system quite complex. I hope someday I will find way to use the techniques behind Smalltalk (live environment, object model) in a browser or web environment. Maybe Amber will develop into something I can work with. I really hope so. Any suggestions anyone?

<comment><USER7> There are two other web frameworks in use, and I think one of them is more about generating clean URLs. Illiad?

I love the idea of Smalltalk, but it also never stuck for me. I think I just prefer to learn from books than through milling around in the image. All the great minds in Smalltalk seem to be self-driven autodidacts. I'm not.

I'm pretty good at Haskell and Prolog though, so I think it works out in the end. I'm also not good at Lisp or Forth. :)

<comment><USER4> Yep. AidaWeb and Iliad (plus many other smaller ones).

Although Iliad is not about generating clean URLs (it can, though), but more about being small and understandable, plus having Ajax for free and being pragmatic.

</comment></comment></comment><comment><USER14> Based on the title, I assumed this would be an article about how Smalltalk has been murdered:

[http://www.usingenglish.com/reference/idioms/swim+with+the+f...](http://www.usingenglish.com/reference/idioms/swim+with+the+fishes.html)

<comment><USER15> I'd like to see their source for that!

"[He] sleep[s] with the fishes" is the canonical form of the idiom, whose presence in the common vernacular originates with its use in Puzo's "The Godfather"; in my entire life as a native US English speaker, I have never once heard "swim with the fishes" used with anything remotely resembling the same meaning. (It doesn't even make _sense_! Dead things don't swim; they can't, because they're _dead_.)

</comment></comment><comment><USER16> I've got a bit of the blub paradox going on here so this story is lost on me. Can anyone give me a concrete example of what he's talking about instead of an abstract analogy?

<comment><USER17> In Smalltalk, you can manipulate objects directly rather than just indirectly via code that operates on them. The state of your manipulation is made persistent in smalltalk's image facility. Also, the whole object graph is supposedly better exposed accordingly then what you could get sigh just a plain old debugger.

At least I think that is what the author is trying to convey.

<comment><USER18> This is where my Blub programmer life bites me. I don't understand what you mean by "manipulate objects directly". I can't figure out the right abstraction level to put it at.

For instance, let's say I have an Employee object that throws an exception. Clearly, if inspect that object and change the name member, Bob from accounting's name doesn't suddenly change to Gary. So I'm not acting directly on the object, but a representation of the object.

However, then it just sounds like Smalltalk lets me play with a set of bits in memory that represent the Bob object. Most debuggers I've worked with already allow me to do that in some fashion. Yet, this is always touted as one of the great, unique features of Smalltalk. There must be something that I'm missing, but I can't see what.

<comment><USER15> What you're missing is that, in Smalltalk, the representation on which you're acting is indistinguishable from the object; in your example, when you change the name member, Bob from Accounting's name _does_ suddenly change to Gary; not only do future accesses of the name member on that object return "Gary", but, for example, if you have an HR management frontend open on Bob when you make the change in the inspector, you'll instantly see the effect there as well.

If all your experience and knowledge is born of Unix and the web, you don't really have available the necessary concepts to think about how a Smalltalk, or even a Lisp, actually works -- I know this because all of _my_ experience and knowledge were born of Unix and the web, until recently, when I took it into my head to learn Lisp and also to gain at least a passing familiarity with Smalltalk. The difference is amazing -- in the preface of the UNIX-HATERS Handbook, written mostly by veterans of the Lisp years at SAIL, our modern computing environment is described thusly, by Ken Pier of Xerox PARC:

"I liken starting one's computing career with Unix, say as an undergraduate, to being born in East Africa. It is intolerably hot, your body is covered with lice and flies, you are malnourished and you suffer from numerous curable diseases. But, as far as young East Africans can tell, this is simply the natural condition and they live within it. By the time they find out differently, it is too late. They already think that the writing of shell scripts is a natural act."

Which I thought was hyperbole, too, until I spent some time discovering what sort of environment Pier and the SAIL folk took for granted. I don't unreservedly recommend the experiment; I earn my living in Pier's "East Africa", and sometimes I think I'd be better off if I didn't know how bad I have it. But I can certainly say that if you haven't tried it for yourself, you don't begin to know what you're missing.

<comment><USER18> I understand that changing the name member of the Bob object to Gary will cause it to be Gary in every subsequent member access. Perhaps I've grown spoiled in my old age, but I'd be shocked at any system which didn't have this property. However, if I called out "Hey Gary!" down the hall, would he respond? Would his driver's license still read Bob?

The last time that I tried to learn Smalltalk, it was drilled into me that Smalltalk works directly with objects and not just their representations. For instance, the collection of black pixels on the screen was the Mouse object itself and not just a manifestation of a Mouse object somewhere in memory. A large amount of my confusion has possibly come from those lessons.

I agree that Lisp is an enlightening experience. I spent two years using Scheme as my primary programming language at work. Then again, I may just be stuck as a Blub programmer. I spent a year focused on Common Lisp, but never found any use for SLIME, despite using Emacs exclusively.

<comment><USER15> > However, if I called out "Hey Gary!" down the hall, would he respond? Would > his driver's license still read Bob?

Yes and no, respectively.

Perhaps a heavily contrived example might help: Consider a system in which there is exactly one representation of an object member's value, which is stored in that object; when you call an accessor method, what you actually get is a reference, which is instantiated with an observer attached that listens for a notional "change" event, fired whenever the referred value is modified, and whose event handler updates whatever context exists around the reference, regardless of its nature, so that the displayed value matches that newly assigned to the object member.

...and now perhaps you can see why people familiar with Smalltalk think so highly of it; what in, for example, Javascript, would require an enormous amount of manual infrastructure and completely fail to generalize, in Smalltalk happens entirely transparently. It's not so much that you don't have to think about it; it's that there's _nothing there to think about_.

> I spent a year focused on Common Lisp, but never found any use for SLIME, > despite using Emacs exclusively.

And now _you 've_ lost _me_. How can this possibly be the case? What was your Lisp workflow like? I mean, I can understand not getting the appeal of Lisp if you're just talking to the REPL and not working in an actual Lisp _environment_ of the sort you get with Emacs Lisp or SLIME, but I have trouble understanding how anyone could work with those tools for a year without recognizing their potential.

</comment></comment></comment></comment></comment></comment><comment><USER19> One benefit that a lot of commenters here have pointed out is very user- friendly inspection of running code. Kind of a super-REPL. I find that in Python I'm most productive in iPython's browser-based notebook interface (or Mathematica, but I find Mathematica difficult for writing things that go into web-facing applications), which offers similar features.

These notebook interfaces are REPLs, but they're a little more user friendly in the sense that you can edit history in place instead of doing a history completion and then evaluating an additional line.

Has anybody had any experience with these notebook interfaces as well as the smalltalk environment and can give a rundown of the differences?

</comment><comment> do-it-good You can swim with the fish or grow up and play with the big boys (Lisp >> Smalltalk).

<comment><USER15> Symbol's function definition is void: 'Lisp'

</comment></comment><comment><USER20> So, it's a language for doped up hippies. That's what I got out of that. I recalled Jerry Garcia's stories about scuba diving and how it was better than LSD.

I have no clue what it means to live amongst your objects and touch and feel and turn and taste them. That article didn't really explain what that means, but I'll take him at his word.

<comment><USER21> Here is a concrete story what happened me few weeks before, while I was working on a Nintendo emulator in Pharo. I was playing with Super Mario, and at the end of the 3rd or 4th level my emulator crashed because of some index miscalculation in a sprite drawing method. When this happens in smalltalk, a debugger window pops up, and the cursor is on the problematic line. I fixed the bug in the debugger and pressed proceed then continued my journey to save Princess Peach :).

In a live environment it is easy to make experimentations because you can get very quick feedbacks, and there is no need to switch between modes like development to execution or execution to development. Catching and fixing certain bugs is also easier as I showed before.

I think there is a need for this kind of development, that's why people try implementing code hotswapping and class reloading capabilities in various programming environemnts. But still most of them are just limited workarounds compared to smalltalk where live coding works fine for decades.

<comment><USER20> If the original article had contained something like what you just wrote, it would have been an interesting and worthwhile article.</comment></comment></comment>


Dealing with the negative consequences of overloaded operators in C++ - <AUTHOR> http://cplusplus.co.il/2010/02/19/escaping-overloaded-operators/

<comment><USER2> When a C++ developer overloads operators in stupid ways, you fire that developer and rewrite his code. You shouldn't have to make _other_ code obfuscated in creative ways (such as this void() example) to compensate for weird operator semantics in specific objects.</comment>


Dell brings wireless recharging to laptops - <AUTHOR> http://www.cnn.com/2009/TECH/ptech/09/29/cnet.wireless.laptop.charging/index.html <comment><USER2>
      The secondary processor -- used mostly in smartphones --
      also draws much less power than a more robust desktop or
      notebook processor and so while it's running in the
      background it doesn't drain the battery as fast: using just
      the instant-on mode will provide up to two days of battery life;

I find this to be the most interesting feature of the new laptop. I wonder if this will start a trend where more and more laptops will feature a "mobile mode", where a very minimal os launches just sophisticated enough for a browser.

Considering this is how most people use their laptops anyway, instant-on and a minimal browser os could be very attractive.

<comment><USER3> If you are spending most of your time in instant-on mode, wouldn't it be more cost-effective to just buy a netbook instead?

The instant-on mode feature does not seem significantly different than Dell MediaDirect. The inductive charging, on the other hand, is something I would love to see in all of my devices.</comment></comment>


Show HN: A drag drop webpage builder in 10k HTML/JS/CSS - <AUTHOR> http://10k.aneventapart.com/Entry/Details/659

<comment><USER2> It's fantastic that you've tackled something so ambitious for 10k Apart. This is a super cool project, and the outcome is fun and inspiring. But it also offers a great benefit to me, personally. Lately, I've been heavily considering building a drag-drop, intuitive-as-possible editor for some of the content my company develops. I've never built such an editor before, so it's great to see some of the design decisions you made in putting this together.

On one hand, the system you've built feels limited. It's so easy to make the snap judgement, "Anything I could make with this tool would be trivial to code by hand — what use is it to me?". But that's a dangerous line of thinking to fall into, when evaluating such a tool as this. Maybe it's not supposed to be a replacement for code. Maybe it's a fundamentally different approach to content design.

I'll need to be mindful of this difference, when I build my editor. I'll be compelled to dream big, to attempt to make it both simpler and more powerful than what we can do with our hand-coded content. But it's an awful lot harder than one may expect, to capture the general ability to design something systematic in a very simple symbolic interface. I'd be wise to look for unique advantages that can come from visual/spatial interaction, and not just try to recreate the processes of coding with GUI tools.

Thank you for sharing this. Contest or not, you've made something that's inspired at least one fellow hacker.

<comment><AUTHOR> Thank you very much for your kind words. The paradigm that I have in mind is fundamentally different to how web dev tools are usually done. This is just a very rapid prototype of some of the most basic elements done rather crudely but I hope it gives some idea of the direction we're going :)

</comment></comment><comment><USER3> Nice. The part I like the most is that I liked playing around with your app to know what it can do.

It does require changes to make it more intuitive and will be looking forward to see how it evolves. Good luck.

<comment><AUTHOR> Thanks, I have a todo list longer than my arm, a lot of which is UX related. There simply wasn't time, I expected to run out of bytes before I ran out of time but it turns out that 10k is a _lot_ when you throw in zip compression - especially if you're coding with the way zip compression works in mind from the start

</comment></comment><comment><USER4> Is the code open sourced? The UI needs some work and so does the css, but overall is very good for the amount of code.

<comment><AUTHOR> Hi there, not at the moment but I _may_ be releasing something at some point depending on time etc., keep an eye on <https://github.com/nrkn>

</comment></comment><comment><USER5> Bravo!

Lovely bit of work for just 10K. The only criticism I would make is about the zoom. Not sure that the controls should enlarge as well.

Is there a betting pool where I can put a few quid on you winning the contest?

<comment><AUTHOR> Yeah the whole thing around that is a bit iffy, it was a compromise I made because it's a little fiddly on very small screens (my phone) and I didn't have time to think about it properly.

</comment></comment><comment><USER6> I was dragging onto the grey area, i think the 'canvas-like' div should have a min-height even if it contains nothing. What do you think?

<comment><USER6> Great job though..

</comment></comment><comment><USER7> Note that you need cookies enabled for the site for the app to work.

Having said that, as Freud observed, "sometimes 10k is just 10k."

<comment><AUTHOR> Curious, as I didn't touch anything to do with cookies in the code. Perhaps browsers use the user setting for allowing cookies to also allow/disallow html5 localstorage, which the site does make use of.

</comment></comment><comment><USER8> Love the snapiness and complete lack of fancy animations!

<comment><AUTHOR> I actually had some transitions etc. but I found they made it feel slow on anything but a desktop machine

</comment></comment><comment><USER9> Very interesting. While I think there are some UI issues (a bit confusing to figure out how to change styles initially, how to save/open needs better explanation, etc), I believe these are simply attributed to the limited space available to the app.

Very good job, and I would love to see this fleshed out a bit outside of the contest.

<comment><AUTHOR> Thanks, definitely agree on there being some issues. I would have liked to have spent more time on polishing it but I submitted it literally 1 minute before the deadline. There's a link to the mailing list on the app if you want to follow progress :)</comment></comment>