We Should Be Building Cities for People, Not Cars (2016) - <AUTHOR> http://devonzuegel.com/post/we-should-be-building-cities-for-people-not-cars <comment><USER2> It seems this discussion comes up fairly often, and the solution is almost always some variation of "make driving too expensive and/or too inconvenient, to force people to use public transit". On the surface that kind of makes sense, using a large stick to strongly encourage change, but I think at its core it misses a huge portion of the problem, which is that bad public transit is 10x worse than just sitting in a bit of traffic, or dropping a few bucks on an Uber/Lyft.

For example I live in a very public transit friendly city, but the buses are un-ridable most of the time due to the rampant homeless issue(and all that comes with a large homeless population) while the light rail is usually better about being a semi-safe, semi-clean environment, that just happens to be so overloaded between between 7am-9am, and 3pm-6pm, that there is almost any price I'd pay to avoid it.

The sad part is that no matter how excessive the taxes or how limited the parking the ones to suffer first, and worst, will be the low-income families and workers. The homeless will continue to do whatever they can get away with, and those of us with higher incomes will grumble a bit and pay the taxes. The only solution I've seen that has a chance to change this is to come down hard on poor public transit behavior, perhaps by putting actual people on the buses with the specific job of cracking down on the drunk/high/piss soaked/etc types, in an effort to improve the quality of the service to the point that the middle-upper income groups uses it again.

<comment><USER3> >> It seems this discussion comes up fairly often, and the solution is almost always some variation of "make driving too expensive and/or too inconvenient, to force people to use public transit".

It's more like the other way around: the idea is to make public transport cheap and efficient enough that it's a reasonable alternative to driving everywhere.

>> For example I live in a very public transit friendly city, but the buses are un-ridable most of the time due to the rampant homeless issue(and all that comes with a large homeless population) while the light rail is usually better about being a semi-safe, semi-clean environment, that just happens to be so overloaded between between 7am-9am, and 3pm-6pm, that there is almost any price I'd pay to avoid it.

I live in a small town on the South coast of England, which just happens to have one of the largest populations of homeless people, nationally. It also has very good public transport, namely, buses, that are always full. I've never seen a homeless person using a bus as crashing space, or causing trouble of any sort. I can't say I ever particularly noticed homeless people on a bus. If homeless people on buses are a problem where you live, that has nothing to do with public transport in general.

Anyway, I think everyone gets the public transport they deserve. If everyone wants to go around by car, then we won't have good public transport- because why would we?

<comment><USER4> >> If homeless people on buses are a problem where you live, that has nothing to do with public transport in general.

When you hear of people being aggressive, high, inconsiderate, or here in Portland two people had their throats slit on the light rail recently near my house, it makes the public not feel comfortable using the public transportation. Since it's called public transportation and these things effect the public and the transportation, it actually has a lot to do with the public transportation.

<comment><USER5> It has nothing to do with public transportation. Wrong level of abstraction. It has to do with the fact the US is turning into a inequality dystopia.

<comment><USER6> This is exactly right. It's the price people pay for living in a place that doesn't care about its people.

</comment></comment></comment></comment></comment><comment><USER7> This is one of those scaling vs. switching cost problems. If you have a small town, then cars are a better option than transit. In a large metropolis, transit is better. The problem is that as a city scales up, each individual step results in continually adding infrastructure for cars without ever making the active decision to switch, and redesign the entire city.

When a small town grows into a medium, it makes sense to add car infrastructure rather than rebuild everything. Again when you grow from medium to large it remains cheaper to add that new interchange rather than change the fundamental structure of the city. Growing from large city to metropolis often means incorporating other cities and their car based infrastructure, and making a coordinated move to anything else is extremely difficult/expensive.

Edit: I doubt we could properly identify the "next big metropolis" early enough to put the proper infrastructure in place. Even if we could, the politics surrounding who gets the infrastructure spending would cloud the process. Neither do I think we could simply set up a new metropolis some where and "build it _correctly_ from the start".

The best bet is to find a means of bootstrapping the conversion of existing metropolises to walkable/dense/transit oriented methods. How do we mortgage the immense future benefits to apply pressure to make changes now? Is there an achievable half step toward the goal that provides enough benefit to drive the rest of the conversion? When I'm confronted with a switching cost vs scaling cost problem in operations, I would be putting in dual use infrastructure. Maintain compatibility while removing dependency.

<comment><USER8> > _If you have a small town, then cars are a better option than transit. In a > large metropolis, transit is better._

Were did that came from? In a small town, you can get by fine with walking, bikes and so on -- like tons of Europeans do in tons of small (and even larger) towns, including towns where cars are totally forbidden and others were (because the town was built in medieval times and its buildings still stand just fine) they are impractical in large areas of a town.

And besides costly transit infrastructure like subways (which you probably have in mind), buses and trams are totally find for small towns as well.

In (most of) Europe you don't have to be a heroin addict or homeless person to ride the bus. Nobody has a problem riding the bus.

> _When a small town grows into a medium, it makes sense to add car > infrastructure rather than rebuild everything._

Again, what? Who said there's any need to "rebuild everything"? You can keep the "historic center" (as it's usually referred to), that is, the original small part of town, and build around it, all the while improving and extending transit infrastructure.

No reason to extend the city around car infrastructure -- like the horrible sprawls one sees in Texas for example.

In fact the US has a nice example of a "city" (speaking of the main area of Manhattan up and slightly beyond the Central Park) that has great density, and if there was the will, could be equipped with a great modern subway (not the way NYC subway is now), and lots of quality buses (modern, air-con, well maintained, not meant for the piss poor), a trolley line, and so on.

The area could be expanded from ~ 1 million people, to say 5 times the size, and with all those plus Uber/Taxi options, bikes and electric scooters, nobody would even care for driving their car there.

<comment><USER9> I live in a New Hampshire city of about 10,000. I'm about three miles out of town, too far to walk regularly. You should try biking downtown in January in the snow, slush, and wind! I don't see anyone biking with shopping bags, even in the summer. We bike for recreation. We've made our choices.

There used to be a railroad that came up from Boston and deadheaded here. It went out of business, was revived, and failed again. There isn't even a scheduled bus through town.

The nearest Lyft is 45 minutes away right now. Meanwhile, my car works great. It's convenient, clean, fast, private, and fairly inexpensive. It hauls my goods, my kids, and my pets. I only need to drive it a few thousand miles a year, so gasoline costs aren't much of a consideration.

<comment><USER10> >>> I don't see anyone biking with shopping bags, even in the summer.

See, this is where cultures clash. You don't expect people with shopping bags in bike friendly European cities either. Why? Because they don't buy groceries for a week at a time.

</comment></comment></comment></comment><comment><USER11> I agree, but "people" should mean all people, not just the able bodied.

Cities keep on inexplicably designing these cool pedestrian only areas for the able bodied and young. There are people who can only travel limited distances, so if you set the beach front back half a mile, you've now cut it off from many older and disabled people.

What I am saying is: For the physically young and able, vehicle-less areas as great, for the elderly and or disabled, vehicles are an absolute lifeline to be able to gain access to things.

For a specific example, where I grew up the shops were pedestrianized (think outdoor mall), my mom had a stroke and struggles to walk, but can drive. The distance from a car door to a shop is a good ten minutes, so she simply doesn't go there. She goes to out-of-town supermarkets with disabled bays right near the entrance.

If the utopia this article wants comes to pass you have to design it with disabled access in mind. "Walk ten+ minutes" is a non-starter.

<comment><USER12> Oh yes.

I just had surgery that requires me to be on crutches for a few months, so I'm temporarily disabled.

If you're young and able-bodied (like me pre-surgery) and want to understand what it's like to not be young and able-bodied (which you almost definitely won't be at some point) you should put your right leg in a brace, and try not to let your foot hit the ground for a day or two and try to live that way. The ground is lava for one leg.

"Walking distance" means about a block or two before you get sore from crutches or your arms get tired or your hands fall asleep.

Disabled access is a godsend, everywhere. And while I can't cook a meal in my own kitchen because I can't move around and hold a plate of things at the same time, I can drive to get takeout and carry the bag inside.

The world changes when you can't easily walk.

Edit: Those electric scooters at Costco aren't as fast or fun as they look.

<comment><USER13> Cars are not the _only_ solution here. Transporting a single disabled person does _not_ require a 100+ horsepower 2-ton vehicle.

<comment><USER14> But doing it fast, cheap, and flexibly does.

Cars cost 50 cents a mile, go anywhere at as fast as anything that doesn't fly, and require negligible physical exertion or special skills to operate. When there is adequate infrastructure that's pretty optimal.

<comment><USER15> The point is, in a walkable city, nobody needs the speed. What's the point of driving at 40mph in a 10x10mi city vs using a scooter at 15mph? You'll probably hit a stoplight after hitting 20mph, and then waste braking to stop again.

Electric mobility scooters are, per-mile, much much cheaper than cars, and cost much less to purchase.

<comment><USER14> In your example a corner to corner trip would take ~90 minutes by scooter, considering the 20 mile Manhattan distance + stoplights. A ring highway would get you there in 15-20 minutes. Even a set of properly timed lights would allow 35mph traffic to cross the width in ~20 minutes - which notably can't be (or just never are?) efficiently timed for pedestrians/scooters.

for the extra hour+ that scooter would take (given no/low traffic) there is no price where its worth it vs the ~$10 that trip costs in a car. (20 miles, irs rate of ~50c/mile)

<comment><USER15> In a walkable city you don't _need_ to go from one end of the city to the other. 10 mi. is insanity. You should be able to go a maximum of 2 mi. and find what you're looking for. I'm in a biking-density neighborhood, and have multiple grocery stores, convenience stores, restaurants, and furniture stores within 1 mi. of me. In a walking density neighborhood, I would expect that to all be available within 0.5 mi. of me.

<comment><USER14> Nobody needs to do much of anything, but people want to. 10 miles is 130th st to downtown Manhattan, a distance people most certainly either want or need to travel regularly. Even in the most culture/store/apartment dense corner of the country.

Now I'm all for effective public transit and dense neighborhoods, but walking and/or biking are simply worse for a lot of use cases.

<comment><USER15> I'm not familiar with Manhattan, are you describing the phenomenon of building dense commuter urban-areas and far-flung residential areas? Because that is not part of being a walkable neighborhood.

But what stops public transit from being the solution here? In fact, over a 10 mi. radius, public transit scales much better than single-occupancy vehicles, and even fully loaded sedans. Go to Tokyo and folks take trains all day. If you're taking about low-to-medium density areas (which isn't a city) then yes, cars are the most effective.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER16> I'm one of those folks who would love to drop everything I have going to wander off into the desert/forest/underwater/whatever with the intention of bootstrapping a new city from scratch. The more I talk about it, I've found that there are a lot of people who would love such an adventure - if we could all just find some effort worth getting behind. It's sort of like starting a hippy commune, only with high-tech intentions. I'd rather embrace the world and one-up it than to hide away from it. I meet a lot of people who agree so I'm surprised there aren't more projects of this nature getting traction.

<comment><USER17> Need a kickstarter like system. Get 10,000 people to deposit $10,000 and you have got $100,000,000 to acquire a nice plot of land, set up planning and governance, and incorporate a new town. I'd be interested in seeing plans for such towns and would be interested in living in one.

Or one billionaire with similar ambitions.

<comment><USER18> > Or one billionaire with similar ambitions.

I was with you until this part. I'd rather not live in a city with an 'owner'.

<comment><USER19> A benevolent dictator does have its advantages. For example being able to determine a culture until it's proven and critical mass makes it unlikely to change. It's comparable to the eternal September problem.

Say some 'hippies' try to bootstrap a city that's very walkable and people flock to it because they want to live in such a city. But it takes a while to get used to a new situation and during that time it's very easy to say "I like to walk to the shops, but I'm used to doing my groceries once a week, so allow me to use my car for _that_." Before you know the 'short-sighted yuppies' overwhelm the 'stubborn hippies' and cars are allowed everywhere one exception at a time.

The biggest disadvantages of a dictator are overcome by being able to move easily and the city being part of the larger legal framework of the country it's in.

</comment></comment></comment></comment><comment><USER20> The very title is as ridiculous on its face as is the underlying idea. It suggests that the car is a being of its own that the city was built for. It doesn't occur to the author that each car has at least one person in it. Almost always that person is driving so she may interact with other people, work with other people, or transact business with other people, or he is himself driving for a business that is doing work for other people.

The city was built so people can get around and interact with others. The means by which people are doing this is cars and trucks. The city is indeed built for people, which is precisely why the city accommodates cars: they are immensely useful means of transportation. It's ridiculous to suggest the city is "built for cars" as though the car is some sort of being with wants and demands. The car is serving the people of the city.

<comment><USER21> I see this point coming up a lot. But if you consider the car a medium of transport for the individual and how it affects the collective it makes more sense. Think of it as "build cities for people, not individuals"

</comment></comment><comment><USER22> I do a lot of traveling for business and staying in a city like Dallas, St. Louis, or some suburbia part of the bay area is absolutely my least ideal place to stay almost always. I love that uber exists, but my favorite part about traveling is walking around and doing photography so that I'm not just sitting in a depressing hotel. If everything interesting is at least 2 miles apart, it's hard to enjoy a city. And especially in Texas cities, many times there are no sidewalks so that walking even short distances is a big pain

<comment><USER23> Texan cities are all very car friendly and pedestrian unfriendly. It is just not possible to get anywhere without a car, and people will look at you strangely even if you walk down to the grocery store a mile away or so. One fine Houston morning, my friends and I decided to walk down to the strip mall for lunch after a night out; the sidewalks were unmaintained and cracking, but also... we were the _only_ ones walking! It was quite a shock to me to see that, especially since the roads were chock full of traffic.

<comment><USER24> The suburb (south Houston suburban city) my mom lives in has a token sidewalk for people to run or walk their dogs. That's literally 90-95% of the type of uses I see there minus one guy I see every once and awhile who looks like he's going to or coming from work. It's pretty sad.

I do get one thing, it is really hot in Houston, so I think that plays a lot into the mentality of cars vs walking, at least there.

</comment></comment></comment><comment><USER25> Rather than trying to force some particular vision of "the good life" on people, what if we tried to price transportation and other things appropriately?

For example, get rid of the gas tax. Toll all state and federally funded roads. Scale the toll according to the amount of wear and tear the vehicle causes for the road. Price something in to account for emissions. Make sure the tolls are high enough to pay for the road and its ongoing maintenance. Cameras capturing license plates at intersections can keep track of everything (tolled highways near me already work this way). Bonus points if you get municipalities on board and reduce property taxes being spent on transportation.

If you started doing stuff like this, I think people's choices will start to change. When it costs $5 to drive 30 minutes in to work every day, people are going to choose to live in big houses with big lots in suburbia and drive everywhere. When they have to pay the full cost of making that drive, their preferences may start to change.

Yes, a lot of stuff would have to change to get people to agree to this sort of thing and make it work. But the author is already talking about re-making cities, so we might as well do it in a way that maximizes freedom and consumer choice... right?

<comment><USER26> If we actually billed those that actually caused road damage appropriately, then _no_ it would not cost $5 to drive 30min to work. Semis are incredibly damaging to roads, they cause 1,400x more wear than cars! [1] — The very same semis city dwellers and anybody who buys anything relies on.

Cars currently _subsidize_ other, much more damaging vehicles' road damage, seeing as they're not paying 1,400x more in fuel tax.

Anyway, the problem isn't transportation, it is the absurd zoning laws throughout the U.S. that force people to rely on personal cars to go anywhere.

[1] [https://www.lrrb.org/pdf/201432.pdf](https://www.lrrb.org/pdf/201432.pdf)

<comment><USER2> Agreed. It's amazing how much damage medium single axled, and heavy multi- axled vehicles do to the roads, and while emissions from those vehicles are better than they once were, its still not great.

<comment><USER27> You can't ignore the reason the trucks exist in the first place. The trucks exist because towns and commercial spaces are spread out, and they're so spread out because of cars.

It's sort of like saying that cars don't emit CO2, burning gasoline does. The gasoline is burnt to operate the cars. Trucks deliver products to our car- centric landscape. If everybody lived in cities we'd only need a fraction of the trucks.

<comment><USER28> You could however internalise the costs they cause by charging road taxes based on the amount of street damage a vehicle causes.

This might actually create unexpected side effects, like semi trucks with 12 axles instead of 3 - but that would be a genuine contribution to lowering the costs of repairing roads!

</comment></comment></comment></comment></comment><comment><USER29> > Websites like Zillow and Apartments.com offer calculations for commute > length and walkability to everyday destinations like grocery stores

If I'm walking to the store, do I (a) try to carry 20+ grocery bags home for my family of five or (b) make a grocery trip twice a week? I don't love either of those.

And that's only groceries, not shopping in general. My wife got a 50lb bag of fertilizer from Tractor Supply yesterday morning. How close does that store need to be for walking to make sense? At the end of my driveway?

Basically....if you have a crowded city of apartments, sure, don't do much for cars. If you have a city of single-family residences (and three quarters of Americans do live in single-family residences), it's _really hard_ to not build for cars.

<comment><USER30> Its pretty great to get groceries the day of on your way home from work. Ingredients are fresh, and nothing sits around wasting away in your freezer or fridge. Your town has to be setup well for it though.

<comment><USER31> Being able to store 2 weeks of groceries in the fridge is a feature for people with > 2 children. It's not a bug.

</comment></comment></comment><comment><USER32> We definitely need to transition from a car-centric to a person-centric urban landscape. Free public storage (parking) of personal property is a blight, and it's reprehensible that polluting and environmentally damaging personal vehicles are given primary consideration in hundreds of cities. I do agree that it's ethically questionable that many of the wonderful commercial districts give up 10-20% of their land to park cars for a handful of citizens. Let's get solutions in the here and now to these car-centric nightmares.

However, let's also build for technology coming down the pipeline. Urban planners today need to think about the coming tsunami of driverless vehicles, as well as the steadily increasing trends of cycling, scootering, e-bikes, and other electric last-mile solutions. These technologies may not make a huge impact like the car, but if they do, our policy-makers should be planning for these potential game-changers.

For instance, with self driving cars, we must ask what will be their effects on institutions like city buses? Does it make sense to have massive often under-utilized buses which don't drop you at your desired location, or does it make better sense to have smaller, 5-10 person self driving vans which can dynamically adjust routes, dropping off riders at much more desirable locations? What about cycling, scooters, and such - will these become increasingly popular as self driving vehicles start to penetrate? I know I'd bike a lot more places if I didn't have to deal with very unskilled and inattentive drivers all over my narrow-streeted city. Does this mean, somewhat paradoxically, that self driving vehicles will actually reduce the number of vehicle trips in a city, while increasing other modes of transit? Will self driving vehicles in non-urban settings actually increase vehicle miles traveled, as couples in expensive metropolis areas realize they can commute twice as far if they get to kick back and relax during the journey?

The implications of these technologies, and others we haven't seen yet, are potentially massive. We need to bring these transport modalities into the discussion whenever we talk about reshaping our urban landscapes.

</comment><comment><USER33> A more transparent slogan would be, "Let's build cities for walking and bicycles rather than cars." Or maybe "Let's build cities for walking and subways and electric scooters." Or whatever. But whatever means of transportation you optimize for today may be inappropriate a century from now. It was horses in the not-too-distant past, and as much as I like bicycles, I can imagine a figure in which bicycles and bike lanes are obsolete too.

</comment><comment><USER34> Visiting the Leonardo Da Vinci museum, I saw an exhibit where Leonardo did an urban design plan. In it, he made the street level pedestrian only. Under the street was another level for horses and wagons (cars and busses today), where each building had an underground entrance to this level through an underground garage. This seems like an elegant solution in an urban area from the man who invented the helicopter, parachute, and painted the Mona Lisa.

<comment><USER23> Except that it would also be ridiculously expensive. If construction costs reduce in the future due to automation though, might be workable.

<comment><USER27> Tunneling costs will come down, almost certainly through automated tunneling. Not because of the demands of urban transit, but because suburbia is fundamentally not economically viable unless the cost of running utilities and paving roads drops dramatically. American society is too wedded to suburban culture to move away from it to any significant extent, so sheer necessity will drive technological innovation. It helps that the costs of suburbia are largely hidden, so either the technology emerges or America continues to descend into a paved-over hellscape.

Like many things America will end up paying 10x to solve problems with sophisticated, overwrought technology that could have been solved through simple social and cultural shifts, but at least we'll get fancy new tools out it.

</comment></comment></comment><comment><USER35> For anyone who wants to see a pragmatic way to build cities and communities, I'd highly recommend Christopher Alexander's _A Pattern Language_. [https://www.amazon.com/Pattern-Language-Buildings- Constructi...](https://www.amazon.com/Pattern-Language-Buildings-Construction- Environmental/dp/0195019199)

<comment><USER36> And his "Build Living Neighborhoods" site: [http://www.livingneighborhoods.org/ht-0/bln- exp.htm](http://www.livingneighborhoods.org/ht-0/bln-exp.htm)

</comment></comment><comment><USER37> I wonder if all these sour grapes about cars will simmer down if a generation comes along that can more easily afford them again.

The area I live in is pretty dense (a mixed commercial-suburbanish area in the most densely-populated state) and also very car-enabled, and it works out fine. The stores I go to are within minutes of driving for me, and work is 10-15 minutes away. I don't know the official term for such a thing, but near my apartment is what's like a micro-city that you can easily walk/bike around while car use isn't very hampered. The major grocery store's plaza gets a large parking lot and otherwise there are street parking areas. In the other direction are major high-traffic roads that connect to interstates. There are also major businesses around here with tech jobs, and they use large complexes with their own large parking lots. There's a lot I don't like about New Jersey but this kind of mixed area seems to work out really well and makes me question the necessity of block-style cities where it's just depressing concrete towers in a grid as far as the eye can see.

Maybe there are more solutions that just take some imagination to support both cars and others in increasingly-dense areas. More car bridges, extra lanes by replacing some sidewalks with sky bridges, underground tunnels, parking lots on the roofs, more reversible lanes, allow motorcycles to use shoulders. Just brainstorming here but I don't like the idea of throwing out the baby with the bathwater with cars - nothing else provides the same freedom to spontaneously go wherever you want on your own terms instead of being beholden to transit schedules or only being able to go as far as you can walk or bike.

<comment> cup-of-tea > I wonder if all these sour grapes about cars will simmer down if a > generation comes along that can more easily afford them again.

In the UK you could afford a car on minimum wage. I have a car. I still don't think cities should be designed for cars. How can anyone look at one of those pictures of American five-lane highways of bumper-to-bumper traffic and think that is in any way sane?

<comment><USER37> I'm saying there are probably unexplored good solutions to that kind of congestion. Another I just thought of is the city motivating companies to make shifts not so centered around 9-5. Spread the rush with shifts of 8-4, 10-6, etc.

<comment><USER27> The 9-5 work schedule went away a long time ago. In places like the Bay Area rush hours are roughly 6-10AM in the morning and 3-7PM in the evening precisely because of differing schedules[1]. And that's for white collar work. Factories and service work have much more varied schedules.

[1] There's a long tail, too. IME traffic becomes noticeably heavy around 6AM and 3PM, but there's a long tail after 10AM and 7PM.

<comment> cup-of-tea Yep. In the UK on a weekday the M1 near London and M25 start to get busy after 04:00 and stay busy all day.

</comment></comment></comment></comment></comment><comment><USER38> I'd share my perspective...

old cities were the best.

i visited some european cities and some middle eastern cities.

there are main roads where traffic is, and then there are streets.

Streets are NOT made of cement, softer the material the easier to walk on ... Dirt? the best.

Streets can sprawl 4 blocks in US city size.

Streets don't have any traffic, but cars can be parked here and there randomly. (car ownership is less)

What it did was that grocery, laundry, hardware store, restaurants, and pretty much everything was in walking distance... you didn't need a car. and there were no cars to get in your way.

But with 5 minutes of walking you could easily be next to highway and hail a taxi.

All that time I was there, I was like OOOMG this make soooo much sense, I dont need to drive 4 miles to some mega shopping mall to do shopping then come back find parking for 30 minutes.

Oh and nobody was fat. Since everyone did light walking daily. people were less stressed as there was culture and less stress.

I don't get why every street needs to have a freaking car in it.

from nyc btw.

</comment><comment><USER39> We don't want cars, horses, trains, buses and things. They are all means to an end. The means of being able to move from place A to B quickly and in relative comfort.

People select whatever gets that means satisfied at the price they can afford. It's a demand supply curve.

I take a bus to Seattle everyday even though it slower, but it's way more confortable than driving. I always get a seat and I can read a book / get work done.

I wouldn't take a crowded bus though. 545 is so crowded you can smell people's sweat. I'd go back to driving. I love driving and bobbing my head to good music.

But most of the days, we don't give a shit. We just want to get to work in morning and get back home in evening. We chose whatever means gets the job done!

</comment><comment><USER40> If walkable cities are so great, why did we ever invent cars?

<comment><USER13> This is a straw man. Nobody's suggesting cars are "bad" or "evil". What is being suggested, is that operating cars (especially at high speeds) should be done _away_ from where we live. Supporting the use of cars within our towns and cities is: dangerous, expensive, and wasteful (of time and natural resources).

Cars are great for traveling great distances (20+ miles) quickly. Using them for day-to-day travel within your own city is akin to taking a cruise ship out on the lake for a weekend fishing trip.

</comment></comment><comment><USER41> Is productivity actually going to be increased by reducing the number of cars on the road? If not, then I wouldn't count on ever seeing a serious effort towards making cities less car-centric. A politician may help bring in some bike lanes here and there, but their interest is almost entirely in keeping their job.

</comment><comment><USER42> I'd just like one small change to cities. Sidewalk escalators/treadmill of varying speeds. It would make commutes so much easier, plus people could actually get some modicum of a workout while commuting. I mean, it worked on the Jetson's, right?

<comment><USER43> They could at least try it! They never try anything!

</comment></comment><comment><USER17> What I would like is an electric bike and a legal structure where I can take one on the freeway(goes at least 60mph) and in bike lanes(go slow there). Range 30mi.

<comment><USER31> Something that is safe at 60mph is not really a bike anymore.

<comment><USER17> When is something with two wheels not a bike anymore? I imagine you would use a mass cutoff right? Or visual size? Bikes on the Tour de France get over 80mph on down hill sections so making one "safe" at 60mph seems not impossible on first principles. Safe is usually judged by just a feeling and I would like to check out my feeling on such a machine. I'm sure this space of vehicle has not been worked on much and would love to see some active invention going on.

<comment><USER31> If it can go 60mph, it needs a motor. Usually something like that is called a motorcycle.

</comment></comment></comment></comment><comment><USER44> Just so what we are on the same page: There are people in the cars.</comment>


Show HN: PHLO – Visually integrate Voice and SMS into your apps in minutes - <AUTHOR> https://www.plivo.com/blog/announcing-phlo/ <comment><AUTHOR> Hi HN,

I am the co-founder of Plivo.

Back in the summer of 2012 while we graduated out of Ycombinator, we released APIs for developers to integrate SMS and Voice in their apps. Over the last 7 years that has helped us grow to 70,000 customers.

The abstraction of complex telecom infra via APIs in 2012 was a game changer in many ways. It gave web and mobile developers the ability to add powerful functionality in a few days.

Today we are really excited to announce the Public Beta of PHLO (Plivo High Level Objects) - A whole new visual way of integrating Voice and SMS in minutes. With PHLO you get:

\- Pre-built use case templates with the option to add custom code \- 100% functional parity with Plivo API & XML \- Serverless architecture hosted on Plivo infrastructure \- Offered for free, regardless of scale

Here's a quick concept video we made: [https://www.youtube.com/watch?v=jZmtRTe_vQo](https://www.youtube.com/watch?v=jZmtRTe_vQo)

Would love to get thoughts from the community.</comment>


Time crystal - <AUTHOR> https://en.wikipedia.org/wiki/Time_crystal <comment><USER2> >the oscillation frequency remained unchanged even when the time crystal was perturbed

good for clocks?</comment>


Hidden benefits of gossip, ostracism (2014) - <AUTHOR> http://news.stanford.edu/pr/2014/pr-upside-of-gossip-012714.html <comment><USER2> What is problematic about gossip as a feedback mechanism is that there is no backstop as far as keeping things factual. Gossip can simply be a lot of completely false and targeted information, driven not by concern for the greater good but by one or two canny people's interests, as anyone familiar with the corporate variety can attest.

<comment><USER3> That's no different than public feedback, though. It's not a problem specific to gossip.

<comment><USER4> Building on this, there's also less anonymity with gossip in my experience. If I trace back a malicious rumor to /u/PeanutCurry on reddit, that's essentially where the trail ends most likely. I have no idea who they are or why they are saying false things about me. Workplace gossip on the other hand can be traced. I'll definitely admit that it can't reliably be traced in the sense that anyone can do it. But if you have friends in the office and participate in the social space then you will probably have an idea of who to pressure for information. And if you have the social capability you've got a good chance of extracting that information.

</comment></comment></comment><comment><USER5> >Their research showed that gossip and ostracism can have very positive effects. They are tools by which groups reform bullies, thwart exploitation of "nice people" and encourage cooperation.

"Reform." Sure. Look, gossiping behind peoples' back doesn't work as a feedback mechanism for everyone. If you can't read the cues, your only option is to be ruthlessly conservative around others:

1\. Never trust anybody.

2\. Never introduce yourself into a social situation that you haven't been specifically invited to join.

3\. Always try to remember what the people around you believe or feel strongly about, and be careful never to mention those things.

4\. Always be pleasant and agreeable, never directly contradict people. Never speak your mind, and never be fully honest and open.

I mean, I guess that's a positive outcome from society's point of view. There's no trouble, no friction, no inadvertent impositions on others. That's good. But I dunno, it doesn't feel very positive. I like people, and I feel like most of my views are pretty agreeable, but ... well, I don't _know_. Nobody ever tells me these things.

Edit: What? I can't really pick up on these things, and this is what I slowly and painfully learned from gossip growing up. It's been very isolating, and hard to unlearn as an adult. What problem do people have with this point? Is my experience invalid?

<comment><USER6> Rules to live by for strangers. Rules to die by for keeping/making friends.

<comment><USER7> If you want to be a cipher instead of a human being, maybe.

</comment></comment></comment><comment><USER8> We evolved from a ape-like mamals- and it has always been beneficial to have one member in the group ready to eat for tigers, lions and bears.

That is what drove social evolution, that if the group could agree on you as the next in line, sleeping deeper in the tree, on the thick branches, that dont give you a warning if the cat gets to you- tag your it.

Socializing today, from the first bullying (nuke-tests) in school to the advanced stages of mobbing at work- is still not far from this intial cold-war that tought us how to speak about who should be the next one to be fed.

Its horrific, its ugly and as it goes with truths, that makes it more likely.

But today, we can not only avoid this, we can even detect situations that trigger such behaviour excesses (age and ability uniform groups, external performance stress) and can avoid this, by declaring a external (virtual) group member as the next to be fed. "Your department is under a lot of stress .. but at least you do not mess it up like this other department, who are about to see the axe, because they cant team up."

TL,DR; Know you nature well, do not go into denial, hack it within the limits of the whats possible, nature is not a destiny.

<comment><USER9> Suicide is the result of bullying, workplace mobbing, community harassment, being hacked and fucked with over and over again for decades. The tigers and wolves in this case are replaced by the act of suicide -- this is the goal now whether people are conscious of it, or not.

Humans are primitive creatures in possession of a global stalking/harassment network that leaks over into "Real Life".

</comment></comment><comment><USER10> I would be surprised if such a fundamental behaviour would not have an evolutionary advantage.

<comment><USER6> Sure: discredits other (an thus increases your status), people like complaining (increase your like-ability), feeds people interest (people return for more) -> better relationships. More chance to live.

Personally I am applaud by such behaviour. Even telling second hand is a no-go unless you know the source would be willing to tell the other person.

<comment><USER11> I think you're ignoring the fact that the person who is doing the gossiping can also be the subject of gossip. If you gain a reputation for spreading untrue negative assessments about others, then you could end up being the subject of ostracism as that behavior also can lead to results that are harmful for the group.

Which, of course, can lead to even more complex "gaming" of the system, but only to the point where the amount of effort you put in outweighs the minimum acceptable level of effort you could otherwise put into the work itself.

</comment></comment></comment><comment><USER12> Constructive criticism, speaking out against wrong isn't gossip.

</comment><comment><USER13> This reminds me of a post about reinforcement learning agents, I think from OpenAI. They found that to get the agents to coordinate as a group, they had to judge and criticize other agents' actions in addition to their own.</comment>


ISP: BitTorrent Traffic Increased After Pirate Bay Blockade - <AUTHOR> http://torrentfreak.com/isp-bittorrent-traffic-increased-after-pirate-bay-blockade-120705/ <comment><USER2> Maybe the blockade of Pirate Bay has caused much publicity of BitTorrent; that is why traffic increased.</comment>


Tim O'Reilly on The State of the Internet Operating System - <AUTHOR> http://radar.oreilly.com/2010/03/state-of-internet-operating-system.html <comment><USER2> "The only platform that really works is a platform with no platform vendor, and that's the Internet." --Dave Winer [http://www.scripting.com/stories/2009/08/01/heyMikeIToldYouS...](http://www.scripting.com/stories/2009/08/01/heyMikeIToldYouSo.html)

All vendors attempt to influence the relative positioning of their applications on their platforms. Microsoft and Apple have long thrived with this model, and I expect Google to too.

The difference with Google is that I also expect them to be more open about it, hence the open sourcing of Android and perhaps other OS moves they make.

I think this is significant because of Google's investment into public infrastructure. They are not building out a platform upon which only they can make money. I see Google as the number one contributor to the Internet Operating System today.

</comment><comment><USER3> A fascinating article and on the money IMO. I definitely see this outsourcing of capacity to anonymised servers in the cloud, with tools like map/reduce and memcached becoming cloud-equivalents of single-OS concepts.

Interesting how social is just one aspect, though; and the logical integration of social into this model is as a platform or API. Just as in the 'perfect' OS you would have a centralised address book, in the Internet OS you have a platform-neutral, universally-accessible social graph. Is social just a part of the picture? The way I see it, social's the _centre_ of the picture, lately.

There's also a fight between local-resource apps and this thin-client approach, mainly for functionality that can't be outsourced to the cloud - gaming, Excel, even some kinds of hacking. Google Docs, games-in-the-browser technologies are working to fight this, but it's not going to be an overnight battle.

</comment><comment><USER4> The article is more interesting as an insight into Tim's mind. He thinks very highly of himself. He claims that he alone organizes and launches all the O'Reilly conferences.

Maybe it was done for brevity, or maybe he alone truly is the heart of the company. I would feel uncomfortable taking sole credit for organizing and launching conferences without acknowledging the few hundred people who actually do the work.

<comment><USER5> I don't think when he says he'll talk about "the rationale behind conferences I organize" he's trying to imply he's solely responsible for them.

One thing that leaders of companies (or any other organizations) do is articulate the vision behind their institutions' actions. Using the first person for that purpose is pretty common. (Maybe presumptuous, but I don't think by intent.)</comment></comment>


Just why did people start using Python anyway? - <AUTHOR> http://ndanger.org/blog/2008/10/08/adopting-functional-programming-or-just-why-did-people-start-using-python-anyway/

<comment><USER3> Because one of the major problems of writing code in collaboration with other programmers is communicating the meaning of existing code. And python is one of the few languages out there that had an explicit goal of being legible.

<comment><USER4> I'd argue that Python goes beyond legibility of code since most of the Python community seems to have settled on very similar coding standards. Not just silly things like 4-space indents, but the way the code is written. It makes it really easy to pick up foreign Python code.

The explicit over implicit here also helps. Yes, it is a pain when dealing with only your code (why do I have to keep doing self.var_name when Java just lets me say var_name), but when dealing with foreign code, it means you have explicit scope.

I'd also argue that Python's import is just wonderful. Where many languages like their secret-sauce methods, Python's explicit imports makes it incredibly simple to find where a name is coming from. While Java has the convention of import java.util.*, Python has the convention of from math import log - <USER2> imports the name log into your file. So, you see log used in the file, you can easily look at the import to see where it's coming from - and yes, it isn't hard to imagine identical names in different libraries and you shouldn't need to know that something with the same name is defined in two places that usually aren't used together. Want the whole math library, just import math and then use math.func() so that you still know where everything is coming from!

For what it's worth, I think Python's syntax is a bit ugly, but it's standard! Python code never looks that foreign and having foreign code look familiar to you is just wonderful. It might not matter when you have your 1-person project, but when dealing with the code of other's, it's wonderful.

<comment><USER5> _It makes it really easy to pick up foreign Python code._

You really can't overestimate how big a deal this is.

</comment></comment></comment><comment><USER6> Python is simple, easy to read, and has been around and active since 1991. Because of that, it also benefits from being a very stable, fast platform (for an interpreted language), and has a huge standard library (<http://docs.python.org/modindex.html>). If it's not in the standard library, you can probably find it somewhere. A "killer app" is a paradigm that computer people have been using since visicalc, but I'm not sure it applies to every situation.

</comment><comment><USER7> "Haskell... even has an Emacs mode."

Is there a programming language which _doesn't_ have an Emacs mode?

<comment><USER5> I don't think there are major modes for brainfuck or unlambda.

I thought about writing one, but then came to my senses.

<comment><USER8> if you are writing brainfuck code, I doubt you are going to use emacs as your environment. More likely ed or cat...

<comment><USER5> I know, it was a joke.

I wrote an ed mode for Emacs once, though...

</comment></comment></comment></comment><comment><USER9> No killer apps? What about this <http://www.python.org/about/quotes/> ?

</comment><comment><USER10> Because other people used it, composed good code and even others adopted it. This resulted in a high-profile Python scene and good code. I think that many new ideas were contributed and it was fun to share ideas. This resulted in a rapid development of toolkits, frameworks and software. If you wanted to be part of this, you had to use Python.

But I think it is the same with JavaScript, Ruby, FreeBSD, PosgreSQL and many more hip foobars; In contrast, Java, PHP, many (not all) Microsoft products, Linux (partly) allured so many bad coders that it is simply boring to work through their code.

</comment><comment><USER11> The article is mistitled. The question it actually poses is: "Why isn't Haskell as popular as Python yet?"

While I dearly love Python, I don't know enough about Haskell to adequately answer this. The article makes it sound like Haskell is doing all the same right things as Python -- although this apparently isn't paying off yet, so the article must be overlooking some factors.

</comment><comment><USER5> I tried Python out right when I was getting incredibly frustrated with a Perl program that had grown too large for its own good. Python seemed so much cleaner that I switched _immediately_. Its standard library is quite nice, though not quite as large as CPAN.

Ironically, I may be switching from Python to Lua now, for the same reason.

<comment><USER12> In all seriousness, the only reason I use Python over Lua is for the library. Lua is far more flexible and extensible, but it has a very sore lack of standard libraries like you can find with Python. But I keep my fingers crossed, and continue to use Lua as an interpreter inside my C apps, where the lack of libraries is a non-issue because everything I need to use is a custom API exported from C.

<comment><USER5> > but it has a very sore lack of standard libraries like you can find with > Python

Agreed. I find it quite a bit more elegant overall, and I decided to just jump in and do my throwaway scripts in Lua and see how much of a difference that makes. If I like it enough to write a few small libraries along the way, everybody wins.

Lua has tail-call elimination, coroutines, closures, and lambdas. I'm pretty sure Python has none of these, except for (possibly) a limited form of coroutines. (The Python lambda is too crippled, its closures are broken.) Lua is also one of the most deliberately portable languages I've seen, too. I have a hunch it would be a great language for bootstrapping a Lisp or Scheme compiler, though I haven't tried this yet.

<comment><USER13> Python closures work well. (The lambda is syntactically crippled.)

<comment><USER5>
       >>> def makeAdder(x):
       	def inc(y):
       		return y+x
       	return inc

       >>> f = makeAdder(3)
       >>> f(4)
       7

So far, so good.

       >>> def makeAdder2(x):
       	v = x
       	def inc(y):
       		v += y
       		return v
       	return inc

       >>> f2 = makeAdder2(3)
       >>> f2(4)

       Traceback (most recent call last):
         File "<pyshell#15>", line 1, in <module>
           f2(4)
         File "<pyshell#13>", line 4, in inc
           v += y
       UnboundLocalError: local variable 'v' referenced before assignment
       >>>

It looks like you can't mutate variables in a closure. Am I doing it wrong? If you really can't, that seriously limits their power.

\--

In Lua:

      > function adder(x)
          local v = x
          function inc(y)
              v = v + y
              return v
              end
          return inc
          end
      >> >> >> >> >> >> >> > f = adder(3)
      > =f(4)
      7
      > =f(4)
      11
      > =f(4)
      15
      >

Works fine. (Also, the syntax is really clean.)

<comment><USER14> Python 3.0 fixes this with the nonlocal statement. However, you are correct that this doesn't work in Python 2.5 and earlier.

<comment><USER5> Ok, thanks.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> I found Stackless Python while trying to throw together an idea for a massively parallel algorithm... worked beautifully and led me to django. Python's simplicity made me feel like I could hit the ground running, but I'd say the frameworks got me hooked.

</comment><comment><USER16> I started using Python in 1999, because I was tired of Perl's weirdness and looking for something new. I don't use it much these days, but still have a lot of respect for it.

<comment><AUTHOR> what do you use these days?

<comment><USER16> I got more involved with Tcl over time ( <http://tcl.apache.org/> and some other stuff) and over the past couple of years have been moving towards Ruby for most of my scripting/web needs.

<comment><USER17> Wait, you couldn't stand the weirdness of perl, but you like Tcl?

All I can remember about Tcl from my months of using it is the ugly, ugly loops:

      for {set i 1} { $i <= 100 } { incr i } {
       puts "Well, that wasn't ugly syntax!"
      }

Incidentally, Fortran, for all its other ugliness, has the best for loop I know:

      do i = 1, 100
       write(*,*) "Hooray, Fortran!"
      enddo

<comment><USER12> > Incidentally, Fortran, for all its other ugliness, has the best for loop I > know:

How is that better than Python?

        for i in range( 1, 100 ):
            print "Python!"

<comment><USER18> That's not a good idiom, because it only allows you to loop over small ranges:

      >>> for i in range(1000000000):
      ...     print i
      ...
      python2.4(1261) malloc: *** vm_allocate(size=4000002048) failed (error code=3)
      python2.4(1261) malloc: *** error: can't allocate region
      python2.4(1261) malloc: *** set a breakpoint in szone_error to debug
      Traceback (most recent call last):
        File "<stdin>", line 1, in ?
      MemoryError

Why attempt to allocate such a large list when you just want to do something several times?

<comment><USER19> for i in xrange(1000000000): print i

xrange() addresses the problem you describe and has been in Python since, like, forever. However, range() is nicer for learning the language, since it's easy to see how it composes into a list.

<comment><USER18> Yes, I know. It's just bad that people are taught one way of iterating, and then may or may not learn the right way at some later time.</comment></comment></comment></comment></comment></comment></comment></comment>


AI, automation will disrupt our world – but only Andrew Yang is warning about it - <AUTHOR> https://thehill.com/opinion/technology/469750-ai-and-automation-will-disrupt-our-world-but-only-andrew-yang-is-warning <comment><USER2> The U.S. unemployment rate is 3.6%, close to a record low. People who want jobs can generally get them. Now is not the time for a universal basic income.

<comment><USER3> If you really think that absolutely no number crunching is going on... Yeah, okayy.</comment></comment>


Bram Cohen's Practical Cryptography - <AUTHOR> http://bramcohen.livejournal.com/74651.html

<comment><USER2> _Maybe someday Schneier will write a book which I can recommend to people who are getting started in cryptography, but I'm not holding my breath._

Schneier wrote _Applied Cryptography_ , which is the best way to get started in the field. I picked it up while I was still learning programming (and not exactly confident in my math abilities) and still found it incredibly well written and understandable.

<http://www.schneier.com/book-applied.html>

From the Preface:

"I wrote Applied Cryptography to be a both a lively introduction to the field of cryptography and a comprehensive reference work."</comment>


Twitch is launching an advisory council that includes top streamers - <AUTHOR> https://www.businessinsider.com/twitch-safety-advisory-council-board-help-guide-policies-ban-2020-5 <comment><USER2> I wonder how this plays out with the community. Twitch wants them involved, but I wonder if the larger community share the same interests as the top folks.

</comment><comment><USER3> it is the cancel culture brought to another popular media platform by one very loud minority.</comment>


Bidi Brackets for Dummies - <AUTHOR> https://www.unicode.org/notes/tn39/ <comment><USER2> Just like the Hindu-Arabic number system enabled great innovation in mathematics because it was so much easier to use than the Roman system, I wonder if the simplicity of characters in English, enabled the US to jump to such an early start in computer software.

English characters are pretty compact (26 symbols), no accent marks that can't be ignored, have 1:1 mapping between uppercase and lowercase, and are easy to break up by word. This enables even very simple algorithms in a very resource constrained computer to do some work that is mostly right.

For example, splitting a person's name by space, taking the last word, making it uppercase and sorting by ASCII value lexicographically, mostly works if you want to produce a phone book listing, especially in 1950s-1980's America. And you can code this with very simple integer operations without needing a lookup table or a bunch of special rules. Soundex is also pretty simple to implement and deals with a lot of homophones.

Of course, now that we have the computing resources and libraries, handling the vast diversity of human languages is doable, but in terms of bootstrapping a computer software industry, simplicity, I think played a role.

<comment><USER3> I suspect the simplicity of the English (Latin) alphabet was only of marginal importance in the U.S. having such a long lead in computer science and engineering over the rest of the world. Need (WWII, Cold War), population, industry (the U.S. produced 50% of the world's GDP at the end of WWII), wealth, a market economy, and all that goes with and precedes all of the preceding list (education, opportunities, institutions, culture, etc.) meant that the U.S. was bound to get started on computer science very early, and was bound to make great progress.

If English had had twice the number of glyphs, IBM would still have existed, even though they'd have had more work to do. There might have been some number of glyphs past which the burden might have slowed progress enough that some other nation would have been competitive, but it's all just information, and ultimately computer engineers would have figured out something.

Or look at some evidence: Japan already had what it needed to communicate digitally before WWII in spite of having a complex script (three, four if you include romaji), and most computer engineering and computer science progress came after WWII, and indeed, Japan's computer industry did reasonably well post-WWII -- comparable to France's, which did quite well considering how much smaller France was than the U.S. in population, industry, wealth, etc. And: need was decidedly critical in the UK's computer engineering and science development _during_ WWII (Alan Turing, Colossus). France, Japan, and the UK, each had some of the conditions that the U.S. also had, but not as many, so it's not surprising that the U.S. did well.

I've a feeling that among the things that helped the U.S. that I didn't list above are also: the decadal census (which is intimately related to IBM's rise), Sears & Roebuck (the antecedent to Amazon), the immense geography of the country and widely dispersed population (which impacted the preceding two items). I bet others can add items to the list. Some of these certainly existed elsewhere.

Of somewhat less importance is that a number of very important mathematicians who helped found computer science (e.g., Claude Shannon, Alonzo Church, Haskell Curry) were Americans. Their research was published, of course, and many others were not Americans (e.g., Charles Babbage) which is why I say they were of less importance.

<comment><USER4> > And: need was decidedly critical in the UK's computer engineering and > science development during WWII (Alan Turing, Colossus)

It's useful to note here too that UK's work in WWII was started by desperate Polish need, and there is indication they got somewhat further ahead than people tend to credit them for. (It's interesting to wonder if Poland may have been ahead in computation if it wasn't, you know, invaded, and forced to kick the ball over to the UK.)

It's also worth noting the different approaches to "war time secrets" the US and the UK took. Where Alan Turing had a strong _practical_ head start on computation in WWII, his work was locked under confidential and secret designations and he was not allowed to commercialize it after the war. Worse, he was almost entirely stopped from building practical machines, and it's a wonder he managed to contribute as much to computing theory as he did even with the restrictions he was under. (Also don't forget his own government lead him to an early suicide.)

The US in its contractor-based approach (including IBM's involvement) didn't hamstring commercial interests anywhere near as strongly (despite declassified hindsight now telling us they were straggling behind, comparatively, UK's efforts) so much after WWII by locking things into a "classified vault" and the US did not try stopping the people who had worked on computation from continuing to work on computation.

<comment><USER3> Yes indeed, the Polish really helped a lot. But obviously they could not continue their efforts after Poland fell -- not in Poland anyways. And everything else you say is also true. The last thing you say is particularly insightful: that the U.S., by using commercial contractors, was essentially committing to letting them commercialize some of the technology, while the UK by not using commercial contractors, was not and then did not. It's especially sad that homophobia led to the early end of Turing's life -- imagine what he could have done had he lived longer!

</comment></comment></comment></comment><comment><USER5> This is surprisingly hilarious for a "Unicode Technical Note." It changed my opinion about the Unicode Consortium—positively!—until I read this:

> These technical notes are independent publications, not approved by any of > the Unicode Technical Committees, nor are they part of the Unicode Standard > or any other Unicode specification. Publication does not imply endorsement > by the Unicode Consortium in any way.

Still, awesome and fun. And I learned something.

</comment><comment><USER6> > — How about the left angle bracket "<"? Is that at least a "bracket"?

> No.

> — Why not?

> Because it's a LESS-THAN SIGN.

It's petty, and there are bigger problems, but this is one of my main gripes against SGML and its successors.

<comment><USER7> you don't have to use LESS-THAN and GREATER-THAN in an SGML [https://en.wikipedia.org/wiki/Standard_Generalized_Markup_La...](https://en.wikipedia.org/wiki/Standard_Generalized_Markup_Language#Concrete_and_abstract_syntaxes)

<comment><USER6> That's cool! But it's also somehow even worse, by being so complicated.

</comment></comment></comment><comment><USER8> Ok it is 2020. Let me see if I can use brackets in my text:

This is English with some فارسی(Persian) in it. Persian is also called Farsi(فارسی).

این متن به فارسی )Persian) نوشته شده

It worked but I was very confused and I'm not actually sure if position of (Persian) is right. I put it after the Farsi.

The majority Farsi line is completely butchered. Not sure if it is because this text input doesn't support RTL?

<comment><USER9> That line has two occurrences of U+0029 RIGHT PARENTHESIS in it. I think one of them should have been U+0028.

On top of that, you really want dir=rtl on the element to give it right-to- left base directionality. If that's not an option (e.g. in a HackerNews comment), you can surround it with Unicode directional control characters U+202B RIGHT-TO-LEFT EMBEDDING .. U+202C POP DIRECTIONAL FORMATTING to make it behave correctly as a right-to-left run within a left-to-right context.

</comment></comment><comment><USER10> Pronounced Bidi like MIDI, or Bidi like Wifi, or (?)

<comment><USER11> Bye-dye (Bi-directional).

Some people/locales pronounce wifi as "wiffy".

</comment></comment><comment><USER12> What I missed in the article, was: why? Why does a text rendering system or encoding conversion system need to care about which brackets are paired?

</comment><comment><USER13> I tried to find what "Left S-shaped bag delimiter" was used for and all I found was the Wikipedia page listing the symbol among other math symbols: [https://en.wikipedia.org/wiki/Miscellaneous_Mathematical_Sym...](https://en.wikipedia.org/wiki/Miscellaneous_Mathematical_Symbols-A). Does someone here have an explanation?

<comment><USER14> While it does not use this notation, I think this page is the right idea. [https://en.wikipedia.org/w/index.php?title=Bag_(mathematics)](https://en.wikipedia.org/w/index.php?title=Bag_\(mathematics\))

</comment></comment><comment><USER15> Of course mathematicians would also consider brackets used like ]0,1[ and [0,1[ as valid notation for open or half-open intervals. And if you try hard enough you can even make your braces {} look like a ξ and write some monstrosity like {ξ∈[0,1[}.

</comment><comment><USER16> Parsing brackets is even more entertaining in physics due to the bra-ket notation:

[https://en.wikipedia.org/wiki/Bra%E2%80%93ket_notation](https://en.wikipedia.org/wiki/Bra%E2%80%93ket_notation)

</comment><comment><USER17> "U+FDE3" should be U+FD3E, ORNATE LEFT PARENTHESIS.

</comment><comment><USER18> (2014)</comment>


Zed Shaw is angry about feed readers - <AUTHOR> http://www.zedshaw.com/rants/i_want_the_mutt_of_feed_readers.html

<comment><USER2> _Come on you retards. Fucking mother fuck..._

You know, I think these guys have grown up watching people like George Carlin and come to think that throwing around petty insults and profanities randomly is somehow funny in itself. There's an art to it, you guys. Carlin knew what he was doing. You don't.

</comment><comment><USER3> I can't wait for angry ranting to go out of fashion.

<comment><AUTHOR> For now, it's an easy way to get traffic. People like it when you're willing to call it like you see it and skewer the mediocre things that surround us.

As an alternative, what's a forceful way to critique the central problem Zed discusses in his rant, namely the practice of blindly copying a (questionable) UI metaphor from another application category, email, without resorting to ranting?

In general, lengthy writing on the web works best when you have a _story_ with a conflict and resolution -- Zed is frustrated by all the products he encounters, and he finally finds one that matches what he wants. Joel Spolsky uses this heavily. The way to promote a product these days, I guess, is to make the story about you, the potential customer, who has a problem the product solves (hooray!). An angry rant fits into that well enough that it's a tempting, easy route.

</comment></comment><comment><USER4> My favorite line: "That should be a 2 minute job finding something someone else already wrote on CPAN and another 2 minutes writing a single line of Perl nobody else will have to read again (because they can't)."

</comment><comment><USER5> Zed is always angry. That's why we love Zed!

<comment><USER6> I sense a new startup idea.

A form that reads:

Zed Shaw is angry about [textbox]. [textbox for link].

Posts to all the aggregation sites like reddit and HN ;)

<comment><USER7> Really since the 'is angry' is implied by the 'Zed Shaw', you could get away with just 'Zed Shaw - [topic]'

(Edit: I love Zed, just so we are clear. Of course, I loved Maddox too, and I don't expect everyone else to like him just because I do.)

</comment></comment></comment><comment><USER8> It seems a bit odd to me that he would go on about the functionality of feed readers but he wasn't willing to try google reader based on a completely different merit?

</comment><comment><USER9> Q: What's the difference between reading an angry blogger at work and listening to a loud mouth drunk in a bar?

A: They're both irritating, but in a bar, you can be drunk too, so it seems less irritating.

<comment><USER10> Angry rants can be hilarious but he's veering into net kook territory with reviews of console based feed readers. I'm anxiously awaiting the next article where he gives us his Ham radio call sign, rips the authors of various Amiga emulators a new asshole, and then reveals his latest project - an album of bird calls he performed on the tenor recorder.

<comment><USER11> _"... Angry rants can be hilarious but he's veering into net kook territory with reviews of console based feed readers ..."_

The problem with limiting your repertoire is your response becomes one dimensional and tired. Maybe _"Angry Zed"_ is following the Joel Spolsky "Rule 1" in Painless Functional Specifications Pt4, _"Be funny"_ ~ <http://www.joelonsoftware.com/articles/fog0000000033.html> The only thing is Zed is not funny. Now if you want Angry try emulating _"Angry of Mayfield"_ (Kenny Everett)~ <http://www.youtube.com/watch?v=MXkxJkjCk-c> or how about Mr.Gumby (Monty Python) ~ <http://www.youtube.com/watch?v=IIlKiRPSNGA> or if you want a quick essay read the "Argument sketch" (Python again) ~ [http://www.davidpbrown.co.uk/jokes/monty-python- arguement.ht...](http://www.davidpbrown.co.uk/jokes/monty-python- arguement.html)

Once you have made your _"Angry"_ point you should move to a different style. Unless of course you want to be a "blub" blogger like Jed.

<comment><USER12> The only thing is... I thought it was funny. I wasn't offended in the slightest by the rant. I know I have a bizarre sense of humor but he's doing _something_ right.

</comment></comment></comment></comment><comment><USER13> Wouldn't you want to read feeds in your browser, where you can follow the links without switching windows?

<comment><USER14> What makes you think I have a browser open all the time? At least on my system, I'm far more likely to have a terminal open.

And no, I don't want to read feeds in a browser. (Actually, ideally they'd show up in my inbox as emails, but that's a different topic)

</comment></comment><comment><USER15> Besides being angry, Zed is posting some very useful information. "The mutt of feed readers" isn't something I'm looking for right now, but for the handful of people who want it, it's a great thing to find.

</comment><comment><USER16> Perhaps he wants Hacker Top:

[http://www.catonmat.net/blog/follow-hacker-news-from-the- con...](http://www.catonmat.net/blog/follow-hacker-news-from-the-console/)

</comment><comment><USER17> Try Canto! It's a curses based reader that is fast and easy to use.

<http://codezen.org/canto/>

</comment><comment><USER18> Seriously though. What's with Obie's pictures?

</comment><comment><USER19> Zed Shaw has mastered link baiting.

</comment><comment> cypress-hill use rss support in gnus for emacs. tada it can read email too. so he can get rid of mutt. not sure how much more minimal you can get than rss-as-news- articles

and what is with this trend of people buying core2duo boxes to run dvtm? top won't bother reporting idle of greater precision than 99.9 %

anywho, it seems emacs can give him his console orgasm while dropping a dynamic runtime that ties it together. news, email, irc, im (via bitlbee), web, and of course editing text now and then

<comment><USER20> He states he uses Vimperator and listed Vim before Emacs at the end of the article--he uses Vim, not emacs.

</comment></comment><comment><USER21> I don't understand the bit about Mutt not having folders. I use Mutt and have folders. Is he talking about using it with IMAP or something?

<comment><USER22> yeah, i'm not sure what the hell he's complaining about. i use mutt with maildir and imap folders, even nested imap folders.

my mutt is compiled with the 3rd party sidebar patch and i have a view just like gui mail programs with a list of all my imap folders showing me which have new mail and how many.

</comment></comment><comment><USER23> Just use Google Reader, Zed, but only read encrypted blogs that are available via encrypted URLs.

<comment><USER23> Of all the wise ass comments, mine gets modded down...</comment></comment>


If scientists want to educate the public, they should start by listening - <AUTHOR> http://www.washingtonpost.com/wp-dyn/content/article/2010/06/25/AR2010062502158_pf.html

<comment><USER3> _"According to polling performed by the Pew Research Center, Republicans who are college graduates are considerably less likely to accept the scientific consensus on climate change than those who have less education. These better- educated Republicans probably aren't ignorant; a more likely explanation is that they are politically driven consumers of climate science information. Among Democrats and independents, the relationship between education and beliefs about global warming is precisely the opposite -- more education leads to greater acceptance of the consensus climate science."_

I object to the terminology. Just because someone is cherry-picking information to support their chosen ideology doesn't make them "not ignorant". It makes them willfully ignorant.

Part of the problem with American political discourse is that we don't do enough to marginalize non-factual arguments -- from both sides of the political spectrum. Pretending that people aren't "ignorant" if they're filtering facts through a political sieve doesn't address this problem. Everyone has freedom of expression in the US, but we should all be doing more to make it plainly clear that some types of content are inferior to others.

<comment><USER4> Or maybe these Republicans went to college, saw how politicized the science departments were on their campuses, and instead of shrugging it off, realized that scientists are prone to mistakes and misleading just like everyone else, and so their claims should be taken with a grain of salt, just like those of everyone else.

I fall into that camp. My time in college impressed upon me how human and fallible the academy is. I went in thinking "professors" had all the answers. Then I met enough people who were stealing funds, sleeping with students, lazily grading papers, exploiting free labor and jealously hording grant money, that I realized these were just people, prone to the same errors in judgment that everyone else deals with.

<comment><USER5> _I realized these were just people, prone to the same errors in judgment that everyone else deals with._

I don't understand how this is relevant to the discussion. No one has ever claimed that scientists are all-knowing or super-human or somehow not subject to the cognitive defects endemic to all human brains.

But just because scientists are human and make mistakes does not mean that their claims about scientific matters are wrong. I mean, my attorney is a human guy who makes typical human mistakes, but when it comes to giving me legal advice, he's a hell of a lot better than the average person. His expertise is beneficial even though he sometimes forgets things or gets confused or gets angry or suffers from status quo bias. All those problems mean that I should exercise some judgment while considering his advice, but statistically, his advice is still much better than what I could come up with on my own.

</comment></comment></comment><comment><USER6> A fundamental problem that I see is twofold:

First, we have a more educated populace globally (not just in the US) - <USER2> leads to more confidence in our own opinions, and when combined with "the university of Google" and trusting everything one reads on the internet you'll get echo-chambers of likemindedness repeatedly referring to each other. We tend to believe things that we hear over and over. Add in the lack of accountability within the media to appropriately question all claims from all sides in a scientific manner and you can easily become highly insular in your views and opinions.

Secondly - science has moved on in ways unfathomable a century ago - a time where the wealthy could afford an education and those without could not (and hence trusted those with an education more, although you can also claim that corporations have also lessened the trust in anyone too). The sciences today are so incredibly complex that the scientific community has the option to either: a) dumb it down; or b) dumb it down. The problem there is that when you simplify science, you lose some of the details and open yourself up for cherry-picking critique. Add in the issue that most science is now not black- or-white (something that the conservative in everyone prefers) but rather is based on probability (yes, I know all about the black swan events that through out prior observations, however scientific method requires repeatability) - irrespective of whether or not the lifestyle that they currently live is based on such approaches. Add in the proud to be innumerate and scientifically illiterate and you've got some major problems. Mix in that science now looks like religion to the lay person, due to the complexity and lack of comprehension, and you're going to have big problems.

What is the scientific community to do? I'm not sure. We need to change the perception of science in the community. We need to educate people on the scientific method (even though there are many in the hardcore religious groups who oppose it). Then we need to build a better grounding in science for the next generation and make it valued in the same way that the financial and legal sectors are. After all - they're all dependent on the discoveries for their own operations.

</comment><comment><USER7> Does it really matter? Most people can believe in witches, intelligent design and what not while doing their jobs good enough. Europe, Far East, Russia trust science way more, but it doesn't seem to lead to any significant advantage.

<comment><USER8> Couldn't agree more.

I've never really understood why anyone cares about who believes what when it comes to topics in science. You can't advance in a career in the sciences without accepting on some terms evolution by means of natural selection so who cares if a bunch of people don't agree?

I'm sort of amazed at the arrogance on display by those who seem bent on making sure everyone agrees with them. It seems like we would be served well by some degree of skepticism of the bishops and the scientific establishment (in all areas). It seems like the more we know the more we lose sight of what we still don't know and don't proceed with much humility.

For my part I'm skeptical of the claims of biologists, mainstream economists, climatologists, and those who offer financial advice. I don't take a strong position on evolution one way or another because the outcome doesn't affect me in any way. I might get made fun of behind my back for doubting these people but that's fine by me.

I also didn't take any losses in the latest stock market crash because I saw it coming three years ahead of time and was safely in cash waiting for the market to figure out what I already knew. I take strong positions on economics because the outcome can really affect me and my family. I might be wrong of course but at least I'm going in with my eyes open.

<comment><USER9> _I don't take a strong position on evolution one way or another because the outcome doesn't affect me in any way._

You're just fine with having the next generation of schoolkids taught that "God Did It (or maybe aliens)" is the only acceptable explanation for the origin of life, then? Because this fight started with religious zealots trying to prosecute teachers for going against scripture, and it's hard to have any doubt that the clowns pushing Intelligent Design would do something similar if people stopped smacking them down. It might not matter to you whether evolution is right or not, but that's not what the fight is about - the fight is about whether or not scientists should have to poll the idiocracy and make sure they won't offend them before reporting their findings.

And yes, I'm arguing slippery slope, maybe - but the argument in favor of worry is a lot more compelling when we've just finished clawing our way up from the bottom.

 _It seems like the more we know the more we lose sight of what we still don't know and don't proceed with much humility._

Absolutely. And with climate science, I'd tend to agree with you, we don't know all that much and might want to be careful about how much we trust the preliminary findings - the data appears to be messy, incomplete, and difficult to work with, and the field started out so highly politicized that it's hard to know who to trust.

Evolution, on the other hand, is not even in the same ballpark - evidence is plentiful, it all agrees with the theory, and consensus is overwhelming (and one big difference between bio and climate science is that biologists don't tend to go into biology because of political leanings, so there's far less selection bias amongst researchers).

<comment><USER8> I think that I am fine with that because I'm not sure it matters. The truth is the truth and it has a nasty habit of winning out even if it takes hundreds of years. Theories and ideas go into and out of favor over time. The battle between rationalism and empiricism has raged basically nonstop since Aristotle and continues today with each side gaining and losing ground with each generation of thinkers.

I'm amazed by the continuing influence of Marx and other socialist philosophers even though we have theories rooted in Platonic arguments and empirical observation that are fairly one sided in their analysis of the subject. It disturbs me greatly that schools teach Keynesian economics and that Paul Krugman has more distribution than what a blog would provide him. I'm disturbed by the success of the Neocons and their apparent love for war.

All that being said I move on with my life. I realize that the best I can is argue my case and if I fail then that's fine. Ideas aren't as important as life and the people in it.</comment></comment></comment></comment>


Elixir RAM and the Template of Doom - <AUTHOR> http://www.evanmiller.org/elixir-ram-and-the-template-of-doom.html <comment><USER2> I like and use Erlang full time, but I am very glad to see Elixir gain traction.

BEAM is really a marvel of engineering.

I've mentioned this before, but I've head experience engineers show disbelief at what things it can do -- lightweight processes with isolated heaps, with ability to have millions of them, isolated faults (if one crashes in anyway it won't scribble over memory of others), very low latency garbage collection, awesome monitoring and tracing facilities, live code replacement and so on.

It really feels like having superpowers using it so nice to see a whole new ecosystem of languages on top of it.

<comment><USER3> The isolated faults thing: how is this different than every other managed language? Especially if shared state isn't used?

<comment><USER2> Start multiple threads. They write some data from them. One of them crashes. Is it safe to just restart that thread and continue?

Not always, because that thread might have written to so some shared data structure and left it in an inconsistent state. Restarting that one thread might seem to work but because there is no guarantee, the safest way is to restart the OS process.

It might not even be your code. Maybe your RPC library or some other package did it internally. You might restart and 99% of time it will work, but it will not be a guaranteed thing.

Now, of course the equivalent counterpart to this is not threads but you can do this with OS processes. And I've done it in Python. You can use pipes, file system writes, sockets to create a reliable system were some processes can crash without bringing down the whole service. But it is cumbersome.

But imagine the sever handles a million connections. Certainly doable in Erlang. Each one handled by one lightweight process. Connection does something unusual, maybe uses a new feature which was added last night. It crashes, that's fine. Other 999999 are ok. If this was a C++ program, it might have segfault-ed and caused the other 999999 connections to be dropped.

I've seen systems which had a periodically crashing subsystem that was being restarted behind the scenes for a while most of the system stayed up without noticeable issues. In business terms that means a smaller ops team, it means not having to wake up at 4am to answer pages (if subsystem heals itself, can just fix it in the morning) and so on.

Moreover, live code hot-patching is often touted as a gimmick. But I've used on a large production clusters while it was serving tens of thousands of requests per second without stopping. Sure it was scary and by that time something has already gone wrong (to need that fix), and it was nice not having to to shut down everything just to add an extra trace or log statement.

<comment><USER4> I don't think it's so cumbersome with modern python. There's first class coroutines, futures, process pools and such now. Also there are a number of queues systems in python which easily allow running failed tasks again. One project I use is basically task(func, args). That's it. Then if it fails we can have them automatically restart, or wait for review etc. This is over multiple machines too. It's only about 60 lines of code, including nice gui interfaces to manage the tasks, and deploy the whole lot to various machines.

Erlang is amazing of course. Just wanted to say that some of those patterns are now available in python and easily usable. Not common to all python code, which is where I think erlang wins out. It puts this stuff front and center, and has first class support. Looking at a random erlang code base, you'll probably see it there. Random python code bases... not so much (ok, queue systems are quite common in Django/Flask projects). It's very rare to see python greelets/eventlets in the wild for example, but generators and async stuff are becoming quite commonplace.

Also python has single dispatch now (built in, not in a third party library). Another thing which Erlang does well (pattern matching). Again, not so commonly used except in modern python shops. These combined with quickcheck for python (hypothesis), and gradual typing really have made modern python a much more happy place. Erlang deserves some big respect for spreading good ideas.

<comment><USER2> Sure. Individual aspects of Erlang/OTP are all present in other systems. OS processes, queuing backends, light weight co-routines, Java has some code reloading too.

But it makes a difference if it is in one language/framework and built-in. It makes tracing/debugging/developing easier.

Like with Python, yeah can use a queuing subsystems and submit jobs. But that is another service to configure and manage. Can use multiprocessing (and I've done that), but can't launch 1M of sub-processes. Which now changes how you develop. It has a green-thread co-routine support via greenlet (eventlet & gevent) but those share memory and if you do any CPU intensive work will block each other and will also share the heap.

<comment><USER5> I'd say it's a stretch that Java has code reloading. Sure you can reload the bytecode, but unless you're marshaling the data to the new version like Erlang does you're just introducing more errors than fixing things.

</comment></comment></comment></comment></comment></comment><comment><USER6> Another interesting read is how BEAM (the Elixir/Erlang VM) does scheduling: [http://jlouisramblings.blogspot.co.uk/2013/01/how-erlang- doe...](http://jlouisramblings.blogspot.co.uk/2013/01/how-erlang-does- scheduling.html)

<comment><USER7> The post is old, but still somewhat true. The most important change is how memory carriers can be moved between schedulers/cores nowadays which improves the TLB miss rate and makes for better system locality.

</comment></comment><comment><USER8> I am very glad that I made the decision to pick Elixir as my next language instead of other options in the pool.

Elixir is fantastic. Erlangs concurrency model takes some time to get used to but is something I've never seen before. Things like state is managed in a separate server process or the ease of building fault tolerant systems with supervision trees.

Plus, for me the best part, Elixir is just "fun" to write. I didn't have this much fun writing software since I first started with programming years ago.

If anyone is looking to get started, check out the book "Elixir in Action". Great book that brings you up to speed with Elixir, OTP, process handling and a little bit of inner workings.

</comment><comment><USER9> Elixir doesn't get much attention. I'm keeping a list of links for languages that I'd eventually like to learn, which includes Elixir:

[https://github.com/melling/ComputerLanguages/blob/master/eli...](https://github.com/melling/ComputerLanguages/blob/master/elixir.org)

<comment><USER10> It's been getting a massive amount of attention lately, really. Well deserved too. Phoenix is the sanest out-of-box web framework I've experienced.

<comment><USER9> How's the editor support? I'm open to any editor or IDE.

<comment><USER11> I use Emacs with Alchemist [1] and I love it. The integration of common tasks like module reloading, testing and inline evaluation have all increased my productivity when writing Elixir. Code completion, Phoenix support and the ability to quickly jump to function definitions within a project are all nice features as well.

[1] [https://github.com/tonini/alchemist.el](https://github.com/tonini/alchemist.el)

</comment></comment></comment></comment><comment><USER12> Can people _please_ stop telling everyone about Elixir, at least until my startup is built in it.

[http://www.paulgraham.com/avg.html](http://www.paulgraham.com/avg.html)

<comment><USER3> It'd be great if: A, he could show a demo of what he means. Like what kind of features were do much easier to make and B, what's YC show? Certainly they have tons of data, and simply knowing the basic tech choices of all those companies would say something. Were people using better languages more successful? Did they, I dunno, have a higher demo day ratio?

Seems a waste to not look at those things. (My guess: it is probably totally outweighed by luck, assuming better languages users are as driven as, say, JS or PHP users.)

<comment><USER12> Oh it's definitely not true that the language will affect your startup much in terms of the application, but the right language choice _will_ affect the type of people and philosophy of the company :-)

</comment></comment></comment><comment><USER13> I know nothing about Elixir but I found this curious "You can also see an extra tiny optimization performed by the regex engine — notice that the final string uses the ampersand from the original string, rather than from the replacement string". OK, but why does it need 4 pointers instead of 3 with the beginning slice length incremented (7 bytes)?

<comment><USER14> Probably because that optimization involved a subroutine call to "something expecting to return an iolist", and that subroutine is what noticed it could reuse the ampersand, then tacked on the replacement, then returned the iolist ["&", "amp;"], which the calling routine tacked on to its running list of the result, which was the final return.

That's part of what makes iolists nice to work with, in the face of immutable strings in a strict language; you can make subroutine calls that may return a string or an arbitrarily nested list of strings, and you simply write code that unconditionally gathers "Whatever was returned" into a list, instead of sitting there appending all the time. The common "concatenation" operation becomes a list consing instead of a laborious copy.

</comment></comment><comment><USER15> I love Elixir very much, but most unixy languages have access to `writev`. Yes that is not default for most IO but programmers typically can choose.

I have done some benchmarks of using `writev` vs concatenating smaller strings using memcpy before sending to the network stream (to avoid kernel context switches) and difference is pretty small.

</comment><comment><USER16> As a curiosity, a Linux iovec seems to have the same layout as an array of Go strings (a bunch of (pointer, length) pairs). Looks like it'd be straightforward to implement a `func WriteStrings` taking a pointer to os.File and a []string that, on Linux, only makes one syscall.

Or you could make your own struct of byte pointers and lengths to make an iovec you can fill with content from []byte's, with the caveat that the caller needs to leave those bytes untouched between when it adds them to the vec and the actual writev. To mix byte and string output, you probably need to use unsafe.

I don't see a way to tie writev in with the stdlib text/template libraries, which stick to plain io.Reader and Writer, without forking them.

Curious how writev compares to the usual approach of just pointing text/template at a *bufio.Writer (which also passes the "generate 40GB of the word DOOM and don't crash" test).

Regardless of the specifics, BEAM and the ecosystem around it is one of the more interesting places to crib ideas from, in that it's pretty different from a lot of stuff out there but has shown some value and longevity in production.

<comment><USER14> It would not be safe to attempt to provide a Go io.Writer that backs to some file descriptor and backs to writev. The text of the io.Writer interface forbids the io.Writer from modifying the passed-in []byte, which implies strongly that the caller is still considered to own it. Also, the fact that I said "implied" is awfully scary too. You can't buffer things easily because you can't reliably know when the last .Write is called, and all the solutions I can come up with will annihilate any conceivable performance advantage (i.e., if you're communicating across to some other goroutine, you just lost the performance). Especially since if you don't write it right away, you almost certainly must take a copy to be safe, and, oops, there went all the performance advantage again. The need to take a copy also prevents you from just declaring it has to be flushable; it's legal for something using a Writer to mutate a buffer and pass chunks of it in multiple times, and I'm pretty sure I've already got code that does that. No point in buffering up several slices if the caller is going to mutate it between invoking .Write calls.

What you could do is create an object that implements, say, interface{ Multiwrite([][]byte) (int, error) }, that also implements io.Writer as a fallback in terms of the Multiwrite so this object is generally useful, but that still gets you no performance win for text/template unless it is modified to incorporate this new interface.

However, that does seem like it's at least a possibility; there are, for instance, already optimizations in net/http for serving up files via the Linux sendfile kernel call, and this would be pretty similar. Providing implementations of Multiwriter for a file and a socket might not be a tough sell; complexifying text/template to actually use it in the core library might be, though. Depends on what kind of performance numbers you can show.

<comment><USER16> Yeah, writev seems different enough from write to merit a different Go interface. Hence the hypothetical WriteStrings method, for example, instead of building around Writer.

Whether it'd be worth futzing to get templating with less copying depends on whether you can measure much practical benefit over bytes.Buffer, I guess. Takes round tuits to see.

Mostly just thought writev was neat; it seems cool that it's theoretically possible to write Go code using it too.

</comment></comment></comment><comment><USER17> Just to note he's not actually right on javascript dealing with string literals inside closures in the same way (js will reuse the same memory for all instances of "Foobar" in his map example). I'm pretty sure he just means the general concept of allocations per closure instance will be familiar though, which is correct.

</comment><comment><USER18> All the capabilities the author points to are part of BEAM, which has nothing to do with Elixir. You could write the same code in LFE and it'll perform in the same way.</comment>


Php-ist: Istanbul PHP Conferance - <AUTHOR> http://2013.phpist.org/en

<comment><USER2> I never would've thought PHP was popular in Turkey.

That's because one of the stupidest bugs I've heard of: if you select the Turkey language (tr_TR) as locale, your PHP-code breaks:

[https://bugs.php.net/bug.php?id=18556](https://bugs.php.net/bug.php?id=18556)

Fortunately, it will be fixed in the upcoming PHP 5.5.

<comment><USER3> Do most other languages allow you to change the language you program in or do most just force you to use english?

<comment><AUTHOR> on most (lets say not _most_ bu some of them) application we need to set our environment something but tr_TR. We can use our applications in Turkish but env (actually LC_CTYPE i think?) should be something other than tr_TR, afaik

</comment></comment></comment><comment><AUTHOR> We are going to talk about 'cutting edge' PHP technologies and willing to see you around. edit: typo fixed

<comment><USER4> Will the talk be in English or Turkish.

I'm planning to visit Istanbul soon, hope the timing works for me.

<comment><AUTHOR> Most presentations will be in Turkish. But we are talking with some speakers from abroad to attend our event. These "?"s on schedule are actually reserved for them. So, If they attend, I think 2 of our presentations will be in English (and most probably will be translated simultaneously into Turkish)

</comment></comment></comment><comment><USER5> I'll attend the conferance that is organized by a professional team. I would suggest you.

</comment><comment><USER6> stop wasting time and come to the Gezi Park we need you.

</comment><comment><USER7> i'll attend</comment>