Google Wants to Make Silicon Valley as Bike-Friendly as Copenhagen - <AUTHOR> http://www.fastcoexist.com/3050776/google-wants-to-make-silicon-valley-as-bike-friendly-as-copenhagen <comment><USER2> Retrofitting American suburban sprawl to be less car-centric is going to be one of the enduring puzzles of the 21st century.

The suburban model of planning championed in the 50's onwards became so deeply embedded in development projects and just the entire culture of small city planning across the country that a huge chunk of Americans are completely unaware that a less car-centric lifestyle is even possible, let alone desirable.

We're only starting to scratch the surface of understanding how much friggin work it's going to take teasing out the messes that were made by lazy cookie cutter civic planning. And it certainly doesn't help that local governments, planners and many many ordinary car-dependent citizens continue to fight tooth-and-nail to uphold the status quo in this regard.

It's great that Google is at least attempting to transform Silicon Valley, at least a little bit. I just wish that the hundreds of other communities around the country that don't have a progressive mega company in their neighborhood can get a little nudge from this type of work someday...

<comment><USER3> Here in Minnesota it's common that suburban "subdivision" neighborhoods don't even have pedestrian _sidewalks._ And the inhabitants think that's a _good_ thing. I cannot even.

<comment><USER4> It snows quite heavily in Minnesota, so during much of the year those sidewalks would be unusable or hazardous.

<comment><USER5> Are the roads unusable? I'm guessing not; you can clear sidewalks too - central European countries seem to use a small snowplough for the pavements (ie sidewalks), the snow is ploughed on to the road, the road plough lifts the snow to a truck and it's trucked away.

<comment><USER6> Here in the US it's typical for every house to be responsible for its own sidewalk. So everybody gets it done somehow, by hand, or with a gas powered snowblower, or they hire a service. The same people who mow lawns in the summer, clear snow in the winter. Where the land is public-owned, e.g., parks, the city brings a little machine that's the same width as the sidewalks. Its main attraction is a heated cabin for the driver.

We share a snowblower with our neighbor, but it takes a pretty good snowfall for the machine to be quicker than my shovel. The city plows the streets.

<comment><USER7> No. 90% of people get it done somehow. The failure of the other 10%, and inability to ride your bike more than ten or twenty houses of sidewalk down the line, stands as testament to concept of professionalized public infrastructure.

We don't ask people to shovel the roads.

<comment><USER6> That's true. During the winter, I ride my bike in the street. My route is 100% on "tame" neighborhood streets or dedicated bike paths. The city plows the bike paths with the same priority as main roads.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> To my mind, one of the main issues, in addition to protected bike lanes is the spread. Bike friendly cities are more compact. Commuting to work via bike is not a strenuous fifteen mile commute one way. They tend to be leisurely few mile rides. Now, not to say it's not possible, but a one to five mile bike ride is not the same as a ten to fifteen or more miles bike ride.

Now, I do like Copenhagen's above ground bike roundabout, I've seen. It'd be nice to see those at dangerous or busy intersections.

I'd also like to see "turning boxes" where to make a left you go to a perpendicular boxed out area on the right and wait for your light. They have these in Asia for scooters and bikes.

<comment><USER9> Sure, you're never going to get people who live 15 or 20 miles out biking the whole way to work, but there's lots of people who live < 10 miles away from Google who'd be willing to do it if there was better infrastructure.

You also have to keep in mind biking as a first-mile/last-mile complement to rail transit. If there's good bike paths to get to a transit station, that effectively extends the usable radius of the station. Already, lots of people bike to Caltrain and then bike from their stop to work (I should know, I do it occasionally but recently have shied away because of how full the bike cars are during rush hour).

<comment><USER10> > Sure, you're never going to get people who live 15 or 20 miles out biking > the whole way to work

That's what I do every day in London. Why wouldn't you?

Myself and a lot of my friends choose our housing approx' 45 minutes to an hour away from the centre of London just to ensure we've got a good ride every day.

At a commuter average of 16mph, and an experienced cyclist average of 18/19mph means that 15 to 20 miles is precisely the distance I'd want to cycle.

All I'd want is a good shower, secure bike parking and a safe route to ride by.

<comment><USER11> Many, many people:

\- do not have showers at work

\- do not have safe routes to ride

\- are not experienced cyclists

\- average more like 10mph

The discussion is not "how do we get hardcore bike nuts to ride to work". That's not hard.

<comment><USER12> I find it hilarious that Americans made it to the moon but think that commuting to work by bike is practically impossible. Meanwhile millions of people all over the rest of the world, from school children to seniors, are doing just that every single day. I moved to southern California last year (from the UK) and of course I ride my bike to work. My colleagues think that this is a really strange thing to do and some regularly lecture me about how dangerous that is. Never mind that there are dedicated bike routes that are super safe and even safer than most bike lanes in European cities (because hardly anyone else is using them).

<comment><USER13> > some regularly lecture me about how dangerous that is

I think this is a case of the "vivid example" fallacy. People can easily envision the carnage caused by a bike-car collision. Less easily imagined is the health toll wreaked by 500+ hours / year commuting in a car.

<comment><USER14> And the financial toll of 500+ hours/year in a car that costs real money every operating hour.

On the plus side, you'll never pick up fast food to eat on the way when you're on a bike.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> Based on the photo at the bottom they are going to fail the same way that many other US cities have failed when trying install bike lanes.

You MUST put the parked cars between moving traffic and bikes. If you do not bikers are going to get hit and doored and will obstruct turn lanes.

Pretty much everywhere in Europe gets this right. Traffic -> parking -> bikes -> peds. How did the US get everything completely backward?

<comment><USER16> I wouldn't say pretty much everywhere. Probably only in Amsterdam.

In Berlin it's mostly: cars | bikes | parking | pedestrians (raised sidewalk).

In Warsaw (for example) it's: cars | parking | bikes (part of the sidewalk) | pedestrians (raised sidewalk).

<comment><USER17> You're wrong about Berlin. The vast majority of bike lanes are part of the sidewalk.

They're really haphazard and frequently blocked (Amsterdam is probably the ideal, IMO), but cars are parked between them and the road.

<comment><USER16> That's a bold statement.

Probably it depends on the district. Most of my commute the paths are a part of the car lane.

</comment></comment></comment></comment><comment><USER18> I appreciate the effort, although I'm annoyed that FastCoExist mentions Mountain View and Santa Clara, while avoiding mentioning Sunnyvale, the actual 'heart' of Silicon valley and right there on the map between Mountain View and Santa Clara. But hometown prejudices aside, the challenges are in connecting existing stuff. For example, once you get to the Stevens Creek Trail you are good to go right up to Goole's campus. Sunnyvale has been adding protected bike lanes that cross it east/west to aid that effort.

I suggested to the Sunnyvale city council rather than remove a couple of lanes from El Camino they add an elevated bike pathway right down the center. You can ride on El Camino from Gilroy to Milbrae and if it had an out of traffic bike lane on it then you could open up a lot of the bay area to bikes.

<comment><USER9> > Sunnyvale has been adding protected bike lanes that cross it east/west to > aid that effort.

Have they? Where? I'd love to see some on Evelyn.

Really anywhere there isn't street parking, changing painted bike lanes into protected bike lanes seems like a no-brainer. Much more (perceptual, at least) safety, without any significant change to how the road space is divvied up.

<comment><USER19> > Have they? Where? I'd love to see some on Evelyn.

Me too. I was actually hit on Evelyn a few months back.

<comment><USER18> Remington has full size bike lanes, Mary and Bernardo are in the works to get them, and I don't know where the proposal for Homestead is these days.

<comment><USER9> Two things:

Remington & Homestead don't connect to Stevens Creek Trail, and Mary & Bernardo aren't East-West streets.

You said they were adding protected bike lanes, are any of those protected? Off the top of my head, I can't think of any protected bike lanes I've seen in Sunnyvale.

<comment><USER18> Fair enough, I would ride Remington to Bernardo, up to Heatherstone and then along Heatherstone to the trail entrance.

We may have a different definition of protected, I think of the lanes on Remington as protected but they are created by striping, not curb work, so it isn't like there is a lane all to itself.

If you want to get involved, you can talk to the council at the BPAC meetings : [http://sunnyvale.ca.gov/CityGovernment/BoardsandCommissions/...](http://sunnyvale.ca.gov/CityGovernment/BoardsandCommissions/BicycleandPedestrianAdvisoryCommission.aspx) And see the current map: [http://sunnyvale.ca.gov/Portals/0/Sunnyvale/DPW/Transportati...](http://sunnyvale.ca.gov/Portals/0/Sunnyvale/DPW/Transportation/Sunnyvale%20Bike%20Map%20Final%202007.pdf) (from 2007, they are updating it)

In general, the city is very supportive of creating a bike friendly environment.

<comment><USER9> > We may have a different definition of protected, I think of the lanes on > Remington as protected but they are created by striping, not curb work, so > it isn't like there is a lane all to itself.

Ah, that explains it.

So, you're talking about _painted bike lanes_ (regular single stripe of paint to separate). There are also _buffered bike lanes_ (extended painted area that separates bike lanes) and _protected bike lanes_ (some kind of physical barrier between cars and bike lanes). There are many different options for separating bikes from cars, but if you're just using paint it's not considered protected; the ones in this link all are protected except for the first: [http://www.peopleforbikes.org/blog/entry/14-ways-to-make- bik...](http://www.peopleforbikes.org/blog/entry/14-ways-to-make-bike-lanes- better-the-infographic)

The reason why this distinction is important is that average people are vastly more likely to feel comfortable riding in a protected lane than an unprotected one (note: sometimes protected bike lanes are referred to as 'physically separated'): [http://www.peopleforbikes.org/blog/entry/selling-biking- perc...](http://www.peopleforbikes.org/blog/entry/selling-biking-perceived- safety-the-barrier-that-still-matters)

</comment></comment></comment></comment></comment></comment></comment><comment><USER20> A good way to accomplish this (not mentioned in the article) would be to build more housing close to Mountain View's campus. Office space has been outstripping housing growth in Mountain View for a very long time. See for example [https://www.jwz.org/blog/2015/01/stop-being-bullied-lets- sue...](https://www.jwz.org/blog/2015/01/stop-being-bullied-lets-sue-mountain- view/).

<comment><USER21> The problem isn't Mountain View alone, it's balkanization. You can't just build housing in Mountain View unless you really believe "Alphabet" will be there forever -- that's different from believing that tech will last a long time, because one company does not an industry make. It makes more sense to build 2000 units in each of Mountain View, Palo Alto, Sunnyvale, Santa Clara, Redwood City, San Mateo, East Palo Alto, Cupertino, San Jose, and Los Altos, than to force any one of those to build 20000 units. But coordinating this is easier said than done, and it took a long time to type, at that.

Annexing the suburbs has been mentioned as a possibility for SF, but the real balkanization is worse further south, and it would actually be _easier_ for San Jose to annex most of Silicon Valley -- for one thing, it doesn't cross county lines -- than for San Francisco to reach all the way down the peninsula. The end result is the same, if SJ city authorities recognize both the problem and the opportunity it represents.

But hopefully some useful public transit pops up in the area, too.

<comment><USER22> Facebook took over Sun's old campus, and I imagine some corp would take over Google's campus if they left. Ultimately office space is office space, and planning for a mass regional exodus seems unwarranted. Most or all of the cities mentioned can accommodate new housing developments as easily as office parks now...it seems like a reasonable means of allocation.

I don't even think crazy annexation schemes are needed...what would really change the region is a unified school system.

</comment></comment></comment><comment><USER23> I applaude this effort. I think many people discount how capable they are of making the switch to commuting via bike to work. Almost any commute less then 10 miles can easily be done via bike, and making a "safe" route to connect the metro area is a great first step.

The unfortunate situation is that if you are over 10 miles to your office ( which many are ) you will have a hard time making that commute in a acceptable amount of time, unless you actually make an effort at going fast.

<comment><USER24> I don't want to show up to work sweaty. And I want the utility of a vehicle if my plans change. So I'll drive regardless.

<comment><USER25> You're welcome to your opinion. I bike 8 miles each way in Silicon Valley with a backpack on my back. I ride in a t-shirt and jeans (unless it's really hot, in which case I wear shorts).

I ride moderately hard, so I arrive with a bit of sweat on my body and on my face. Sometimes I wipe the sweat off my face with a paper towel.

10 mins in my air-conditioned cube and I'm back to normal temp, all dried off, and merino t-shirts don't smell.

Driving a car is convenient, sure. My bike commute to work takes about twice as long as driving on 101, though my commute home is often about the same, time-wise due to traffic.

I enjoy the bike ride more, for the most part. Occasionally I wish I had a car. Once I had vertigo so I called an Uber to take me to the urgent care. If I had a car, I would have driven, but that's probably not the best shape to be in while driving a motor vehicle.

So I suppose you'll trade sitting in traffic for the convenience of having a car on the rare occasion you need one. You're welcome to the choice.

I welcome the addition of more bike infrastructure.

<comment><USER26> Just curious, why do you prefer a backpack to a pannier (or backpack-inside- pannier)?

<comment><USER23> I like the backpack better as I can bring it with me on the last 100 ft and into my building where I shower and change, where if its pannier's I either need a backpack inside of it, or I need to carry my stuff around.

Also people steal stuff, so I don't like leaving things on my bike.

<comment><USER27> Try choosing "Office bags" from [https://www.ortlieb.com/en/produkte/radtasche/](https://www.ortlieb.com/en/produkte/radtasche/)

There are pannier backs with backpack straps, or shoulder straps, etc.

Although I have the more basic "back roller" standard detachable panniers. They take a second to attach/detach, nothing remains to be stolen. Best £50 I ever spent! They still look new after 2 years of daily use.

</comment></comment></comment></comment></comment></comment><comment><USER28> I just biked last evening from downtown San Jose to the southern vicinity of the Google campus. There are two main options: Central Expressway or something close and parallel to it, which I've declined. Or trails near the bay shore, which is what I chose.

Bad choice. The trails are for the most part unpaved. Riding my sleek, rigid road bike on those things was torture. Never again. If those trails were paved, that would be a pretty awesome route.

So start with paving the lesser-known trails.

<comment><USER29> This sounds like it could be easily solved by you riding a more suitable bike for commuting. It seems people in the US fetishize road bikes with drop bars and skinny tires as the 'best and fastest' kind of bike and then complain about how uncomfortable biking is. Even in the tour de france they don't use 23mm tires anymore. Going to a wider tire won't affect your speed adversely and to an extent will actually speed you up.

[https://janheine.wordpress.com/2014/01/01/tires-how-wide- is-...](https://janheine.wordpress.com/2014/01/01/tires-how-wide-is-too-wide/)

<comment><USER30> "It seems people in the US fetishize road bikes with drop bars and skinny tires as the 'best and fastest' kind of bike" I don't think that true. The general opinion I've seen where I live is that bikes are toys and paying above a few hundred for one is ridiculous.

I do agree that you probably don't want a race oriented road bike if your goal is to commute to work a few miles but if you enjoy the sport and know what you are getting into then go for it get as awesome a bike as you can afford. It's better than wasting it on some huge car. Bike value should be > car value ;p

<comment><USER31> Outside the Bay Area in the US, I see a lot of hybrid and mountain bikes. In Silicon Valley, there's definitely a preference for multi-thousand $ road bikes -- and people ride them, hard.

Still, riding your carbon race bike to the office is akin to driving your Ferrari to the grocery store -- uncomfortable on rough roads, no storage space, and when you get there, where do you park?

<comment><USER28> When I bought my road bike, I tried to optimize the hell out of the performance/price ratio. You could get a pretty good road bike for less than $2k, or quite a bit less than that with some effort. Choose a store with good prices, and use all the discounts and sales you could get your hands on.

This was a few years back, but I got mine for $1200. Granted, this was in the middle of a massive sale, but still. It's even got a carbon fiber fork (but aluminum frame).

Frankly, not being Lance Armstrong, I don't care about the last few percentage points of performance. All I care is how much I get for the buck I pay, and whether I get a decent bike or not. Keep the chain lubed and the tires rock- hard, and the thing flies on most roads.

</comment></comment></comment></comment></comment><comment><USER32> Silicon Valley is a car-centric urban area, and this Google initiative strikes a cord with this talk "The Importance of Designing Streets Instead of Engineering Them", well worth watching:

[http://www.architecture.io/talks/mikael-colville-andersen- th...](http://www.architecture.io/talks/mikael-colville-andersen-the- importance-of-designing-streets-instead-of-engineering-them/)

<comment><USER33> If you look at the history of South SF Bay, it has _always_ been a string of commuter communities.

It started with the train to take workers into SF and the rich out to their mansions on the weekends. It exploded in the 1950's with affordable automobiles, and houses went up everywhere.

Now the workers are going the other way and the South SF Bay infrastructure is being crushed by it.

</comment></comment><comment><USER34> It would be nice if the Valley was more pedestrian friendly - all too often bikers ignore the rules. One example is near the Palo Alto Caltrain station tunnel between Stanford and downtown Palo Alto, and too many times pedestrians come close to getting hit by their recklessness :( .

One time I got yelled at by a biker on El Camino when trying to board a bus...the biker tried to pass to the right of the bus.

It is frustrating how often bikers don't care about co-existing with the other modes of transportation & following the rules - I feel like this needs to change first before the area becomes bike friendly.

<comment><USER35> It would be nice if the Valley was more pedestrian friendly - all too often cars ignore the rules. One example is near the Palo Alto Caltrain station tunnel between Stanford and downtown Palo Alto, and too many times pedestrians come close to getting hit by their recklessness :( .

[Eh, pick any time you've seen a car shoot through a crosswalk and narrowly miss pedestrians... I observe this at least weekly]

It is frustrating how often drivers don't care about co-existing with the other modes of transportation & following the rules - I feel like this needs to change first before the area becomes car friendly.

<comment><USER9> I love this comment because it illustrates perfectly the cognitive dissonance going on. People everywhere talk about how drivers in their area are like, _so, so bad,_ but nobody ever suggests that we halt investing in car infrastructure until they get better.

And that's a good thing: you don't stop investing in a vital public good just because it's sometimes abused. That applies to bikes as much as cars.

<comment><USER34> I have far more problems with bikers in the area than cars - the close encounter rate is quite high, largely because a lot of bikers don't have good control over their bikes or because they don't care at all about pedestrians and are willing to run them over to force them out of the way. I'm quite amazed I haven't been hit by a biker yet to be honest, some even talking on their cellphones held in one hand while driving pedestrians running out of the way.

I'd be more sympathetic towards bikers if they didn't decrease the quality of getting from one place to another for pedestrians & harass when they decided to not follow laws & rules there for good reason.

You act like being pedestrian friendly isn't a vital public good - I'd argue it is more important than being bike friendly, and if being bike friendly has a logical result in making it much more perilous for a pedestrian (and I'd fear for those with babies in baby carriages), one needs to consider that the current system does not work, and this problem needs to be solved either before or alongside the bike friendly problem.

<comment><USER25> I know you're speaking more of bike/pedestrian conflicts, but that's not an issue on my commute, so I can't speak to it.

Every single law I break as a cyclist benefits drivers as well as myself. It's the lack of infrastructure that makes it safer for me to hop from bike lane to sidewalk rather than follow the bike lane which magically reappears on the OTHER SIDE OF A LANE OF TRAFFIC on a 40mph arterial. It's the lack of infrastructure that makes me prefer to go from road to crosswalk (or cut across an entire road when it looks safe) instead of forcing all of the motorists and their precious steeds to have to accordion up and slow for me as I try to make my way across the 3 lanes of traffic to the left turn lane when I need to turn.

Additionally, every single law I break exposes me to 100% of the legal risk, and anything a driver might consider "unsafe" is putting 100% of the risk of bodily harm on myself, not on the observer in the car.

I say all of this as a car and motorcycle enthusiast with an avowed need for speed. But the reality is that the car-centric view of the roads has to change.

</comment></comment></comment></comment></comment><comment><USER36> Odd to see this in the middle of the article, without context before or after,

> Google plans to give $5 million in matching grants to cities in the area > that want to start building out a better bike network. But even the matching > grants don't come free: The money is offered as a community benefit, > contingent on Mountain View's approval of Google's North Bayshore > redevelopment.

Without describing what Google's proposed North Bayshore redevelopment is, it's hard to know how to interpret that paragraph.

<comment><USER37> This, maybe? Agreed that context would be nice.

[http://www.mv-voice.com/print/story/2015/05/08/linkedin- wins...](http://www.mv-voice.com/print/story/2015/05/08/linkedin-wins-big- google-plans-gutted-in-north-bayshore-decision)

</comment></comment><comment><USER38> Not sure how they generated that stress-level map, but it seems to be an unreasonably simplistic approximation. For example, there is a dedicated bike path along the 101 from the region marked "North Bayshore" all the way past the top-left corner of the map. That entire stretch is less stressful than any place south of El Camino. By extension, most of northern Palo Alto should be dark green instead of yellow and pale green. There's also a dedicated bike trail from very close to the San Antonio Caltrain station all the way to Google, but that path is not evident from the map.

I'm mainly saying that the situation is actually much better than depicted for most of Palo Alto. By contrast, the situation is worse than depicted everywhere south of El Camino except very close to bike crossings.

I'm speaking from personal experience here. I've biked from Crescent Park to Google every day for over a year. I also don't own a car and bike throughout Palo Alto most weekends with no stress.

EDIT: There is a second stress map in the full plan (Figure 5) that shows "average" stress as opposed to "total" stress and represents much more accurately, in my opinion and apparently the opinion of the plan's authors, the true stress associated with riding to Google from each point in the South Bay. In that map you can clearly see the positive effects of the trail to Palo Alto (green blob at top left) and the trail through central Mountain View (green blob center right), as well as the negative effect of El Camino and the 101 (red blobs across those roads).

<comment><USER25> I used to bike commute on rare occasions from near Levi stadium up to around where Oracle is in Redwood Shores. I don't remember a dedicated bike path along 101 at North Bayshore. I'd usually leave Moffet, cross under 101, go up Middlefield to Rengstorff, then ride past Google, turn left, past Intuit, then follow East Bayshore (the road) the entire way until I cut through EPA towards what is now Facebook HQ (used to be Sun).

Has something changed?

Also, the trails they show up by the bay are all super-optimstic. First of all, I think they're pretty much all gravel, they meander all over the place, and they don't GO ANYWHERE.

I live off of Marsh now and my commute involves more East Bayshore, cutting through Pete's Harbor, saying hi to the homeless people under 101, riding over the pedestrian bridge by the VW dealer, etc. I'm actually fairly lucky in that I have little traffic on my commute, but it's not exactly low-stress with a few high-traffic crossings. The worst is crossing 101 at Marsh. There's a hidden crosswalk to cross 3 lanes of the highway 84 onramp onto 101. I hate that traffic engineers decided to use the shortest-distance method and hide EVERY crosswalk behind a blind corner.. especially those on FREEWAYS, for god's sake. And then, it's pitch black at night...

<comment><USER38> I was referring to the Baylands trails, specifically the Adobe Creek Loop Trail and those that lead to EPA.

<comment><USER25> Ah. Yeah, I consider those trails to be far too circuitous to be useful for commuting.

</comment></comment></comment></comment><comment><USER39> When I did my on-site interview with Google in Mountain View, it was very obvious to me I would almost certainly be car commuting every day, for (at least) two reasons:

1) Cost of houses close to Google was ridiculous.

2) The city is very car centric.

Fixing the second may be possible, but the first seems like a more insurmountable (and more important) problem. Where I currently live, I can bike commute to and from work on a daily basis because I can afford to live four miles away, and it only takes 18-20 minutes. It's one of the reasons I still live where I do, and I haven't accepted further interview offers from Google.

Also relevant: [http://www.mrmoneymustache.com/2011/10/06/the-true-cost- of-c...](http://www.mrmoneymustache.com/2011/10/06/the-true-cost-of- commuting/)

<comment><USER40> Keep in mind big companies like Google have buses that run pretty far and you can just count the ride on the bus as part of your work schedule because you can work on your laptop.

<comment><USER41> Yup. I live in Saratoga, about a 13 mile bike ride to where I work at Google West Campus (still part of North Bayshore). I typically ride my bike in every morning (takes just under an hour) and take the bus home - there's a bus stop a mile from my house, plus another one 2.5 miles away. I usually end up taking the bus to the farther stop because I forget to leave my desk on time. :D

I started biking every day partly to try to get in shape, but also because my kids' school schedule is such that I can't catch the bus at the time I'd prefer. (During the summer I took the 7:30 bus near my house, which got me in to work in 20 minutes.)

It typically takes me about 25-30 minutes on the bus to get home, plus 5-15 minutes biking home from the bus stop. I had a 13-mile commute to my old job in Cleveland, and I find I'm significantly less stressed commuting this way, even if it takes slightly longer.

The locations of the bus stops are not publicized to non-employees, but there are lots of them, and some are pretty far out - as far as Santa Cruz. I can't imagine working on the bus to/from SC, though - you'd better bring some dramamine or barf bags!

</comment></comment></comment><comment><USER42> How about they fix the public transport system first ? The bay area (united states in general, except for a few places) has the worst public transportation system.

The VTA light rails and buses are nothing compared to new york or even boston for that matter!

<comment><USER43> > The bay area (united states in general, except for a few places) has the > worst public transportation system.

Living in small tech enclaves in the South (e.g. Atlanta, Chattanooga, Raleigh) would make you eat those words. You might be surprised to find these areas are attractive because there is lots of room for leasing out data centers.

MUNI, BART, CalTrain are (albeit, sadly) _leagues_ ahead of anything these cities have to offer.

</comment></comment><comment><USER44> I live in Mountain View and work in Redwood City. I don't have a car. It's not a big deal. For all the innovation in SV, it always surprises me how close- minded the area is when it comes to transportation options beyond the car.

</comment><comment><USER45> It might make more sense to make the area boat friendly, if we're planning for the long term and take elevation into account.

</comment><comment><USER46> I've biked in Copenhagen and in Mountain View, and I'd say both are head and shoulders above my hometown of Los Angeles which is in turn lightyears ahead of most American cities. Between the great weather, bike boulevards, bike lanes, dedicated bike trails, and wide shoulders, Mountain View can hardly get any better. The difference to Copenhagen is in the cost of owning a car and the population density (i.e. average distance from home to work). I don't think adding more bike infrastructure is going to move the needle on ridership in silicon valley.

</comment><comment><USER47> For masses, bikes work great if the daily operating radius where you go about is something like five kilometers. But in Silicon Valley, except for some minor villages in between, 5 kilometers is only a couple of blocks. And instead of snaking through traffic in a city for five kilometers at slower speeds with your working clothes on, you would be sweating on your bike beside fast-going cars in a very much grueling environment of noise, heat, and an endless stretch of road. And then you would need to take a turn and do another five kilometers along another road.

I could see it working somewhat if you diverted all the bike traffic through the residential areas and punched the isolated culs-de-sac via bike paths so that bikes, not cars, could take a shortcut through the whole block instead of going along by the car routes. This kind of approach is very common in Finland: you can't always drive from one suburb to another but there's always a bike/pedestrian path that cuts through all that extra distance; here's a typical traffic sign denoting that: [http://savepic.ru/7576556.png](http://savepic.ru/7576556.png)

But in general it's hard to see bikes becoming the popular vehicle for masses in Silicon Valley until there are enough towns the size of Copenhagen downtown and built with similar density, and where people commute locally.

</comment><comment><USER48> > Google is also hoping that other areas copy their data-driven approach of > mapping out stress on bike routes, and finding the best places to invest.

Previous week, we had the Fiets Tel Week [0] (Bicycle count week) in The Netherlands. You could download and install an app, which gathers data about cycling behavior. Connected organisations can now start to use this data to optimize bicycle routes.

[0]: [http://www.fietstelweek.nl/](http://www.fietstelweek.nl/)

</comment><comment><USER49> Palo Alto is also building a bike only bridge over 101 which will make it easier and safer for bike commuters to go over US-101

[http://www.cityofpaloalto.org/gov/topics/projects/facilities...](http://www.cityofpaloalto.org/gov/topics/projects/facilities/bridge_project/default.asp)

<comment><USER50> Good for them, it looks like a really nice project. Thanks for the link, I hadn't heard about this at all.

</comment></comment><comment><USER51> There's actually a lot of low-hanging fruit that could make Silicon Valley a _lot_ more bike-friendly with virtually no real-estate investment:

Put up better lighting on the Stevens Creek Trail, enough so that you can see the full trail and surrounding woods after dark. This alone would've doubled the amount of trips I spent biking to work when I was at Google: the limiting factor was that after daily savings time ended, I'd usually finish up work when it was dark out, and my bike's lights aren't really sufficient on that trail. I also know a number of female cyclists who won't ride the trail after dusk because they don't know who might be lurking in the shadows.

Pave the Bay Trails. There's a section by Palo Alto and another by Shoreline that get good use because they're paved. The connecting paths between them and over by Moffett and San Jose are unpaved, and only the most dedicated mountain bikers tend to brave them because it's a very bumpy ride. If you paved over the rest of the existing trails, you could bike from downtown San Jose all the way to the Googleplex via Guadalupe Trail and the Bay Trails.

Add more bike cars to Caltrain. The existing bike car can get really full during good weather. Adding more trains may not be possible, but adding another car to existing trains should be reasonably inexpensive.

Set apart the bike lane on Central Expressway. Central Expressway has a bike lane. You'd have to be crazy to ride on it, because cars whiz by you at 60 mph, they're not expecting to see you, they're often exiting or entering on cloverleafs, and there is nothing separating you from them. A concrete barrier & fence together with a few tunnels under the onramps would do a lot to improve safety, and make Central a viable North/South bike corridor. The real estate already exists for this.

Build more pedestrian/bike-only connections between streets that almost line up but don't quite. For example, a pedestrian bridge across Caltrain between Sunset & Pajaro Ave would let cyclists bike from South Sunnyvale to North Sunnyvale while avoiding busy Mary & Matilda Aves, putting their whole trip through quiet residential neighborhoods. A similar connection between Escuela and Farley (where there's already a traffic light) would connect the dense apartment complexes on California with the Googleplex via the Permanente Creek Trail, though I suspect it'd be bitterly resisted by people on the Farley side because the demographics of those neighborhoods are very different. A pedestrian crosswalk (with a light) between Sleeper and Cuesta Park and then a cut-through on the edge of Cuesta Park via Gantry Way to Rose Ave would link the Stevens Creek Trail and everything that feeds into it with very low- traffic, residential streets that go all the way to downtown Los Altos.

<comment><USER52> The section of the Bay Trail behind Moffett Field apparently can't be paved for environmental reason (the legendary "burrowing owls"?) There _is_ a plan to improve the quality, though (hard-packed/sealed dirt instead of loose gravel)

</comment></comment><comment><USER53> The problem with bike in US is that everybody drives, the roads were initially designed for cars, not bikes. Simply converting part of a drive lane to a bike lane makes cars and bikes still share the road, which is very unsafe. Blind spots can easily cause accidents because of the shared-road bike lane design.

Some downtown streets are already narrow enough, still the stupid city planning squeeze a bike lane into them and put more risk to bikers.

The safe way to make bike lane is separating drive lanes and bike lanes with strip traffic island that can't be crossed. I used to work at Madison, WI for a while. Their bike lanes are completely separated and isolated by grass or tree traffic island from drive lanes. No wonder Madison claims itself the most bike-friendly city in US.

</comment><comment><USER54> If you live on the peninsula and care about these issues:

(1) Look at getting involved in a local group advocating a vision beyond car- centric suburbia. Palo Alto Forward is one example.

(2) At the very least, vote in the local elections, especially (and carefully) for the city council positions!

The future of the Bay Area is ultimately in the hands of town governments, not Google, and the only way to genuinely improve it is for residents to get politically involved who have a different and positive vision of the region's future.

</comment><comment><USER55> Good luck, SV is what 4-5 times (if not more) larger than Copenhagen and consists of spotty urban, suburban, industrial areas, connected by high speed motorways and highways.

<comment><USER56> How about public transport you can take the bikes with you on, and nice bike paths in the denser areas?

<comment><USER55> The denser areas, especially the bay side belt are quite are quite bike friendly. Public transportation is a completely different question, bikes on buses do not work, some train services can be adopted with special carriages to carry bikes on board.

The main issue isn't just roads its and entire infrastructure, e.g. giving bikes priority over motor vehicles like in some European countries which might not work well, In many cases bike lanes tend to also have a negative impact as they are often take spaces from public side walks, you can see that being a very big issue in some European cities that went bike crazy.

London is trying to do that and it's infuriating bikes seem to do what ever the fuck they want they'll go in the bike land but on a red signal they'll decide to go over the cross walk and onto the side walk to get a head, they often go into red signals even on the road when there is no (or they think there isn't) incoming traffic, and they clog bus lanes.

You can't just go from 0 to 60, turning SV into a bike friendly zone will take as much time as it took to turn Copenhagen or Amsterdam into one.

<comment><USER29> Why do bikes on busses not work? They have this already, as well as bike storage on the regional trains.

Do you have a citation for bike lanes digging into sidewalk? I've literally never heard of that, especially in the US where sidewalks are never near bike lanes and separated by a curb/parking/grass.

<comment><USER57> The usual way to carry bikes on a bus is on a shared horizontal rack at the front. The problem is when someone gets off, their bike is invariably at the back, and so they have to remove all the bikes stored later, get their bike off, and put all the others back on. This takes many minutes, which makes it infeasibly slow for commuters.

A better rack design (hanging vertically on the rear?) could solve this.

</comment></comment></comment></comment></comment><comment><USER58> I wouldn't mind all cities doing that. And, more sidewalks! It's horrible that some places almost don't have them at all.

</comment><comment><USER59> I evaluated moving to MTV last fall to take a job with GOOG; bayshore drive certainly is the most direct and dicey route. I'm in a position to move there this fall and knowing that Palo Alto, MTV etc would be connected via safe bikeways would be a huge plus to living in the fairly bland suburbs.

</comment><comment><USER60> That's nice! Seems like the first thing to do is ensure that workers live in a bikable distance from their workplace.

Hint hint. Either scale up in SF, or elsewhere where there's a hope of people NOT using cars or busses to get to work.

</comment><comment><USER61> Dane here.

The thing to remember here is that in order connect copenhagen like that, they basically decreased the size of the car lanes many places and Copenhagen, no matter how much I love it, isn't a big city more like a province.

</comment><comment><USER62> Good luck. I'm an avid bike-commuter, but I live in a dense old industrial city, not a sprawling suburb. Modern transit infrastructure like bike-lanes and LRT lines and the like are very challenging in suburbia.

<comment><USER63> I wouldn't necessarily argue with you, but what's funny is that exactly the opposite argument is used in London. Oh, people say, we can't put protected bike lanes in, it's a dense historic city and there isn't enough room.

Turns out (hooray) there is room, and the first major ones are going in as we speak. Where there's a will there's a way.

</comment></comment><comment><USER64> I do laugh at the image of society at large switching from cars to bikes. At the moment biking is dominated by young fit and generally healthy people. That may be silicon valley but it isn't the general population. I see lots of young parents going to work by bike, but do they take their kids to school on bikes? Does grandma get to the doctor on a tricycle?

And what about the growing number of people who need to be brought places, who cannot drive themselves? There are a great many people with special needs/requirements who will never be able to move themselves safely by bike or any other vehicle. They and their carers should not be cut out of city planning, nor should they be confined to special communities.

<comment><USER65> This is not about replacing cars with bikes, but making biking a viable alternative, such that it is actually possible to get from point A to point B by bike without taking a substantial risk of being killed by substantially faster car traffic.

No one actually expects to replace all cars with bikes. But replacing 20% of them would substantially cut down on congestion and emissions; and avoiding further growth in automotive traffic is likewise important.

And yes, I do see parents taking their kids to school by bike; in fact, my father used to do it with my younger brother some 25 years ago, and just yesterday I passed one of my neighbors heading up our very steep hill with her child on the back of her cargo bike.

There isn't a zero-sum game to be played between cars and bikes. Improving bike infrastructure can lead to reduced congestion for cars, fewer bad interactions between drivers and cyclists, etc.

<comment><USER66> >but making biking a viable alternative

I think the (well-founded) concern is that this expenditure of political capital means mass transit may not get the attention it deserves. Public transit can be ridden by anyone; bicycles are only useful to the able-bodied.

<comment><USER67> Bikes also alleviate congestion on public transit and roads.

<comment><USER64> That is situation-dependant. I have seen slow bikes cause backups on roads. I've also seen heavily-used bridge lanes turned into empty bike lanes. Even when fully used, the carrying capacity (people moved / time) of a bike lane can be far less than a lane dedicated to buses or even cars. (It depends on slope and traffic speed.)

<comment><USER68> > That is situation-dependant.

So let's do it where it makes sense

> I have seen slow bikes cause backups on roads.

Build bike lanes.

> I've also seen heavily-used bridge lanes turned into empty bike lanes.

Why didn't bikers feel safe on these lanes? Why weren't they used, or are they used, you just don't see it because you aren't looking during the right hours?

> Even when fully used, the carrying capacity (people moved / time) of a bike > lane can be far less than a lane dedicated to buses or even cars. (It > depends on slope and traffic speed.)

I've never been in a bike traffic jam, but I've been in more than my fair share of car traffic jams in high density areas. This is because cars take up more space per person than bikes, bikes are a very viable alternative to single person random access transport over short to medium distances while busses are not if the routes don't line up well. Obviously, for traveling 50 miles, there isn't a substitute for a car, but the point of this is to make urban areas bike and pedestrian friendly for the people that live in those areas, not necessarily to make it easier to drive through them.

[http://www.seattlebikeblog.com/wp- content/uploads/2013/12/2n...](http://www.seattlebikeblog.com/wp- content/uploads/2013/12/2nd-Ave-Gif-2.gif)

</comment></comment></comment></comment></comment></comment><comment><USER69> How about a bike lane with a small barrier along the Caltrain tracks? You already have the land, you can build some overpasses at major street intersections.

<comment><USER9> This makes sense technically, but not psychologically, if you're talking about a bike lane that's very close to the tracks. The trains are very large and very loud with their horns. It's already intimidating when I'm biking on Evelyn, pretty close to the tracks. Intellectually, I realize the chance of the train derailing is pretty much zero, but it doesn't _feel_ that way.

Adding such a bike lane would be better than what we have now, but I think a lot of the 'interested but concerned' group would be unwilling to be very close to the train.

<comment><USER69> How about an elevated bike lane that sits above the train tracks like 20 ft. above but with the train running below it?

</comment></comment></comment><comment><USER70> 10-lane freeways and speeding cars? I wish. I live in Silicon Valley and the traffic here is unbearable.

</comment><comment><USER71> Silicon Valley is not exactly a dense city.. It's more a suburb.

<comment><USER9> True, but even suburbs in the Netherlands have high cycling rates, thanks to their good bike infrastructure.

And while SV is not a dense city, it's not _that_ sprawled out. Almost everyone in the area has plenty of services and attractions within a good biking range (~3-5 miles depending on confidence), and lots of people live within a half-decent biking range (< 10 miles) of their work.

</comment></comment><comment><USER72> So you can bike from giant parking lot to giant parking lot?

</comment><comment><USER73> Self driving cars will make biking safer too.

</comment><comment><USER74> teaching people traffic laws would be a welcomed start

</comment><comment><USER75> Blunt out the complexity of the road for self-driving, I see.

</comment><comment><USER76> Hey that might actually convince me to take a job in SV

</comment><comment><USER77> Including San Francisco? Please? :)

</comment><comment><USER78> but who was amsterdam?

</comment><comment><USER79> Checkmate, Tesla</comment>


4.6 TB of storage and 10 years of computation time later, open for business - <AUTHOR> https://portfolio.construction/blog/2019/07/open-for-business <comment><USER2> Looks interesting but your byline doesn't explain what the company is actually doing. I assumed it would be a webtool to help put together attractive portfolios for resume / CV / job purposes - instead it's a stock picking service</comment>


Potential employer flew me out for interview, cancels return flight - <AUTHOR> https://workplace.stackexchange.com/questions/126565/potential-employer-flew-me-out-for-interview-cancels-return-flight <comment><USER2> I actually had this happen once. I charged my return flight, and sent them a bill along with some legal letterhead, for the flight, an extra day hotel stay, and 3 taxi trips. My lawyer made 2 follow up calls and it was paid within the month. The outfit in NYC, is no longer in business. I wonder why. I still remember his sob story about needing the money. Hard to need the money more than someone trapped 1000 miles from home. Dispite being non-religious, I sincerely hope the lowest depths of hell await these types of people.

</comment><comment><USER3> One time my company flew out an interviewee, he was great but decided to go with another company -- that he interviewed at during his trip. Although me and my co-owners were a bit miffed, the idea of cancelling the flight is beyond the pale.

</comment><comment><USER4> Duplicate: [https://news.ycombinator.com/item?id=18921714](https://news.ycombinator.com/item?id=18921714)

</comment><comment><USER5> Name and shame. That's one of the shadiest interviewing moves I've ever heard of. They don't deserve good engineers, ever.</comment>


The largest operator of autonomous vehicles - <AUTHOR> http://www.washingtonpost.com/blogs/the-switch/wp/2015/06/22/google-didnt-lead-the-self-driving-vehicle-revolution-john-deere-did/?tid=hpModule_88854bf0-8691-11e2-9d71-f0feafdd1394

<comment><AUTHOR> Looks like someone else posted a couple minutes before me (with a slightly different url and title). [https://news.ycombinator.com/item?id=9758003](https://news.ycombinator.com/item?id=9758003)</comment>


You want iPad with multitasking? Chinese made one. Apple logo included - <AUTHOR> http://shanzai.com/index.php/market-mayhem/news/746-first-genuine-ipad-clone-runs-windows-7-on-atom

<comment><USER2> Does anyone have any sense of what the market is for these obviously ridiculous knock offs? They are clearly expensive to make, they are endlessly made, and so economics suggests they are profitable. Industrial spam.

It can't just be fools on eBay?

<comment><USER3> > _these obviously ridiculous knock offs_

Infringements of intellectual property aside, in what way are such devices ridiculous. So the battery life is poor, it's a bit heavy and Win7 isn't a great tablet OS. Does that make this ridiculous?

<comment><USER4> This device is ridiculous in the same sense as how all those iPod clones (looks like iPod, has iPod like controls, but no syncing) and iPhone clones (like vTouch, etc, looks like iPhone but no app store) are ridiculous. These imitations just try to be something else and do a bad job at it.</comment></comment></comment>


Show HN: JavaScript image compressor - <AUTHOR> https://github.com/xkeshi/image-compressor <comment><USER2> I was really hoping this would implement some complex algorithm or at least be an interesting implementation, however, it seems to just divide the image height/width by the aspect ratio:

[https://github.com/xkeshi/image- compressor/blob/master/src/i...](https://github.com/xkeshi/image- compressor/blob/master/src/index.js#L80-L87)

<comment><USER3> As I understand it, this library draws the image into a Canvas to then re- compress the Canvas' via the Browser's native `toDataURL('image/jpeg', quality);`. You can optionally specify a width/height to downscale the image.

Imho the readme needs to state what the library actually does. E.g.

"This takes a user image from a file input, optionally resizes it, and returns a JPEG, PNG or WebP as a Blob, ready to upload."

</comment></comment><comment><USER4> This is a simple resize using canvas.drawImage(). Since data is permanently lost in the output file, it is misleading to call it compression.

<comment><USER5> Lossy compression is still technically compression.

<comment><USER6> I've optimally compressed your image for you:

<EOF>

(For very naive definitions of "optimal")

</comment></comment></comment><comment><USER7> This could be a great (although not really real-world) addition to a JS benchmark suite.

</comment><comment><USER8> Input (original)

name: Fuckscape_d80352_5915762.jpg

type: image/jpeg

size: 19.14 KB

Output (compressed)

name: Fuckscape_d80352_5915762.jpg

type: image/jpeg

size: 20.64 KB (-7.85% off)

So your image-compressor actually adds 7.85% to the filesize? Maybe I don't understand the meaning of compression, but shouldn't it be smaller?

<comment><USER9> you should share an image link plus your settings/script to make this useful for OP</comment></comment>


Show HN: PyCloud, a Python IDE in the web browser with interactive tutorials - <AUTHOR> http://www.jitouch.com/pycloud/ <comment><AUTHOR> My friend worked on this for the Facebook Hackathon over the weekend. We were late for the submission for the competition because a 24 hour hackathon ended up with just 22 hours only. Guess we are just going to show it here.

This is a Python IDE with a built in Python compiler. We utilized HTML5 local storage to make it work even without internet connection. You just have to load it once, after that, it should work.

We also took the idea from codeacademy and added some Python lessons for people who are interested in Python.

Tip: Try to use your iPad/iPhone and add this to your homescreen. Now, you will have a workable Python compiler in your iPad/iPhone. It works without internet connection. Since Apple doesn't allow Python compiler similar app to be submitted to the App Store, guess this is a cool hack to have a Python compiler in your iPad/iPhone.

github link: <https://github.com/siong1987/pycloud>

<comment><USER2> Not sure why, but on my ipad2, it crashes the entire browser every time I open it. Did anyone test it on ipad2?

<comment><AUTHOR> My friend did test it on his iPad2. It worked. I currently have no iPad2 with me. Will let you know again once I get my hands on an iPad2.

<comment><USER3> Same crashing result here on iPad 1.

<comment><USER4> While it loaded in Safari (and before it crashed) i clicked the bookmark icon and added bookmark to home screen. Then when i accessed it from the home screen it worked (after loading up). This was on ipad 1

</comment></comment></comment></comment></comment><comment><USER5> similar name to <http://www.picloud.com/>

</comment><comment><USER6> Endow this technology with the amount of content that a book would have, like Zed Shaw's Learn Python The Hard Way, and you have a killer product. Though Zed would disagree that typing the code out yourself from scratch is the best way to learn.

</comment><comment><USER7> Pretty cool but I was surprised at the second lesson:

> Now, we will show you a little more complicated code. You probably already > know what this code does. Let's click Run to see the output.

Um, what kind of tutorial assumes the student already knows the material?!!!

<comment><AUTHOR> To give you some context, this app is originally built to be presented to all the hackers at Facebook Hackathon. Sorry about the misleading line up there.

</comment></comment><comment><USER8> This is a cool project. :-)

It also doesn't work in Opera, because the emscripten compiled CPython doesn't work with this browser. No problems in latest stable Firefox.

</comment><comment><USER9> Make the tutorials really newcomer friendly and you have 100,000 potential users at Stanford online AI class.

</comment><comment><USER10> If I try "import math" or "import itertools" I get an ImportError. "import sys" works though.

</comment><comment><USER11> Hi, nice app. Just to be a pedant, there is a syntax error in lesson 5.

if 2 + 3 = 5: print "OK!"

Should be:

if 2 + 3 == 5: print "OK!"

<comment><USER12> That was the lesson, to see that the IDE does not compile errors and has syntax highlighting for it.

</comment></comment><comment><USER13> Very cool, but it eats memory like crazy. (Chrome 14, Linux.)

</comment><comment><USER14> Very nice! Just one request: use a font other than courier.

<comment><USER15> Why? Courier is widely available and code is readable and monospaced.

<comment><USER14> I find courier very ugly and borderline unreadable.

</comment></comment></comment><comment><USER16> add keyboard shortcut options, eg vim and emacs, and people might use it for real :-)

<comment><USER17> Seriously? You want him to implement Vim or Emacs in the browser?

<comment><USER18> If adding keyboard shortcuts of those two is implementing them, then we've got emacs implemented in Eclipse. And every major IDE. Yay!

</comment></comment></comment><comment><USER19> Oh, wow, look - it's just as if I'm on a Mac! Great!</comment>


Ask HN: What do you miss most from pre-covid-19 life? - <AUTHOR> <comment><USER2> Traveling, Bars, Gyms and Restaurants

</comment><comment><USER3> Traveling to other countries.</comment>


Show HN: A Slack Clone Using Postgres Row Level Security - <AUTHOR> https://github.com/supabase/supabase/blob/master/examples/slack-clone/README.md <comment><AUTHOR> [https://supabase-slack-clone.vercel.app/](https://supabase-slack- clone.vercel.app/)

This is a real-time Slack clone built with Postgres' Row Level Security. It's a simple POC, and you can deploy your own, which takes a few minutes. The database, auth, real-time, and APIs are handled by Supabase, which is an open source Firebase alternative (disclaimer: I work at Supabase). The front end is built with Next.js, deployed on Vercel.

Supabase just released Auth. We use Netlify's GoTrue[1] for authentication. When you spin up a Postgres database on our platform we populate it with an auth schema, turn on the relevant extensions, and add some helper functions - signup, login, etc. When a user signs up to your app, they are assigned a UUID and issued a JWT, which contains the role `authenticated` and their UUID. We can use these details to provide fine-grained authorization for each user using Postgres' Row Level Security.

RLS is a bit confusing at first, so the next month's work will be improving our Auth system to make it extremely simple to use. And documentation :)

[1] [https://github.com/supabase/gotrue](https://github.com/supabase/gotrue)</comment>


Schema for Clojure(Script) Data Shape Declaration and Validation - <AUTHOR> http://blog.getprismatic.com/blog/2013/9/4/schema-for-clojurescript-data-shape-declaration-and-validation

<comment><USER2> I've been working on a similar idea for replacing types. If you can specify how to take apart a type, name the parts and put them back together you can then get validators, pattern matching, recursive-descent parsing with backtracking, generic traversals, lenses and generators more or less for free. By using simple data-structures to describe the types and compiling them to clojure at the call site you can have first-class types without being penalised in performance.

It's still work in progress but there are working examples as of [https://github.com/jamii/strucjure/commit/e0e56a25c1b880c382...](https://github.com/jamii/strucjure/commit/e0e56a25c1b880c38259f2bf59768afc7350fa9c)

        (using strucjure.sugar
          ;; define a pattern
          (def peano-pattern
            (graph num ~(or ~succ ~zero)
                   succ (succ ~num)
                   zero zero))
          (comment ;; desugars to
            {'num (->Or (->Node 'succ) (->Node 'zero))
             'succ (list 'succ (->Node 'num))
             'zero 'zero})

          ;; define a view over that pattern
          (def peano->int
            (view peano-graph {'succ (fnk [num] (inc num))
                               'zero (fnk [] 0)}))

          (peano->int 'zero) ;; => 0
          (peano->int '(succ (succ zero))) ;; => 2
          (peano->int '(succ (succ succ))) ;; => throws MatchFailure
        )

It's similar to the old ideas at [http://scattered- thoughts.net/blog/2012/12/04/strucjure-moti...](http://scattered- thoughts.net/blog/2012/12/04/strucjure-motivation/) but significantly simpler. I'm hoping to be able to release at least the core functionality in a few weeks.

<comment><USER3> Very cool. Also check out the implementation of encapsulation in John Shutt's Kernel Lisp: [http://web.cs.wpi.edu/~jshutt/kernel.html](http://web.cs.wpi.edu/~jshutt/kernel.html)

<comment><USER2> Interesting. I've seen his fexpr work before on LTU but never really looked at it closely. I suppose the only way to go is to read the whole thesis?

</comment></comment></comment><comment><USER4> The opening paragraphs really resonated with me including that code example that can be replaced with any function I wrote yesterday.

A lot of my time in Clojure is spent re-reading and repl-evaluating my function implementations just to remind myself what its symbols look like. Even code I wrote an hour ago. Often I stoop to the level of caching my findings in a docstring/comment.

        (defn alpha-map-sum-combining-thing
          "TODO: Think of better name.
           Example input: {:a 1 :b 2}
           Example output: {[:a :b] 3}"
          [alpha-map]
          ...)

Sometimes I can spot abstractions and patterns and protocols that unify a namespace of functions so that their inputs/outputs are obvious, but often I can't.

This kind of tool is essential for me.

<comment><USER5> I do this a lot:

"Often I stoop to the level of caching my findings in a docstring/comment."

I am not ashamed of this. When my co-workers have to read what I wrote, this kind of information makes clear what the function does. If I don't do this, then they will eventually figure it out by running it at the REPL and examining the input and the output, but if I document that in the docstring, I have saved them a lot of time. I also make it possible for them to actually read the code -- otherwise they can't really read it, expect by repeating it at the REPL.

<comment><USER4> Yeah, you're right. I would love if every Clojure function came with an example input and output.

What I meant to suggest is that my docstring example is something that could be expressed in code.

<comment><USER6> A friend of mine has been doing similar things with the Swagger documentation spec ([https://developers.helloreverb.com/swagger/](https://developers.helloreverb.com/swagger/))

While browsing the docs in a web browser you can fill out some fields for input and see what the output for that input is.

My friend forked it and extracts and lists any example data so you can click to load that example into those fields (my idea!). I tried it out and it's a very nice way to learn/explore a new API, especially testing edge cases where the docs are ambiguous.

It really hits a sweet spot when you have documentation browsing, live execution _and_ example data. I think creating a similar interface combining docstrings, the repl and example data from test fixtures would be a nice tool to have (I find doctests to be one of those things that are better in theory than in practice as they get too long and maintenance is annoying, although perhaps a more literate style in your source code would change that).

</comment></comment></comment></comment><comment><USER7> core.typed author here.

It might be easy to consider Schema as "competitor" to core.typed. In fact, it's the opposite: once they play nicely together they will form a formidable bug-fighting, finely-documenting team. :)

core.typed has accurate compile time checking, and Schema gives an expressive contracts interface for runtime checking.

Once they understand each other, you can start pushing and pulling between static and dynamic checking by using both libraries to their strengths.

Currently, core.typed requires all vars have top level annotations. This is partly because there is no way to recover type information once inside a function body. However, if we have an entire namespace using Schema liberally, we can use schemas to recover information!

This means we can lean on schemas for most annotations, and rely on core.typed to catch arity mismatches, bad arguments to clojure.core functions, potential null-pointer exceptions and many more nasties at compile time.

Then you might start adding static annotations or removing schemas, depending on the kind of code your dealing with. You might do some "static" debugging to ask whether a schema is needed to prevent a type error. core.typed would also let you know when your contracts are insufficient to rule out type errors. Really, you're free to use both tools as you'd like.

Schema looks very nice, thanks for open sourcing it Prismatic folks!

<comment><USER8> I've been really pumped about core.typed since I first heard about it, and I'm excited about the possibilities of combining (or eventually replacing) schema with core.typed.

I think core.typed has come a long way since last time I looked at it (when we started developing schema). Obviously it's a much bigger and more serious effort, and schema was about getting as much bang _right away_ as we could for a few bucks.

I'd love to talk in more detail about how we can collaborate, or at least make sure we play nice together.

<comment><USER7> Fantastic, bring it on!

<comment><USER9> I wonder if there's some way to combine schema, core.typed and clj-schema in some way that is better than the sum of its parts. ([https://github.com/runa- dev/clj-schema](https://github.com/runa-dev/clj-schema))

I regrettably haven't had much time to see where the cross-section between these libraries is exactly, being very occupied at work. But I'd rather work on one grand thing, than end up with disparate libraries that aren't as fully- featured.

</comment></comment></comment></comment><comment><USER10> Author here. Happy to answer any questions or comments.

<comment><USER11> This is a very good idea. And the reason I say that is because in our code base we have developed something similar, feeling the need for it :-). Our stuff is half-baked, though and I never got around to releasing it.

What I'd like to see is something similar to what we did — checking more than just types. Here's an example from our code:

(conforms example-object [map :from string? :to [map :required-keys {"products" [seq string?] "type" [seq #{"type1" "type2"}]}]])

This describes a map containing mappings from strings to maps of a certain kind (where "products" and "type" are required, "products" must map to a sequence of strings and "type" must map to a sequence of strings from a specific set).

From our "conforms" docstring:

Returns true if value conforms to typespec. typespec can be either: \- a string, which value must match literally; \- a predicate, which value must satisfy; \- [seq sub-typespec], which means that value must be a collection of elements, each of which must conform to sub-typespec; \- [map specifiers...], where optional specifiers may include: :from sub-typespec -- keys in the map must match sub-typespec; :to sub-typespec -- likewise for values; :required- keys [key1 typespec1 key2 typespec2...] -- map must include the required keys and their values must match the typespecs.

We don't use that for function contracts and it might be overkill for that, but I'm pretty certain I'd like to be able to specify more than just types for map keys. A list of possible values would be tremendously useful.

This could provide you with some ideas. I can of course contribute the "conforms" function (although it isn't that difficult to write).

<comment><USER8> Thanks for the feedback!

Actually, schema can express arbitrary constraints. Your example translates to schema as:

      {String {(s/required-key "product") [String]
               (s/required-key "type") (s/enum "type1" "type2")
                s/Any s/Any}} ;; allow any other k-v pairs

<comment><USER11> Interesting! Is the enum automatically a vector/sequence, or is that just an omission in the example?

Looks like I'll be using this library sooner than I thought, thanks!

<comment><USER8> Nope, I missed that in the example -- the enum should be in square brackets.

</comment></comment></comment></comment></comment><comment><USER12> This is really brilliant, and damned useful. Reminds me of how type declarations provide self documenting code in Haskell. Thanks alot!

<comment><USER10> Definitely an inspiration. The core utility of Schema is that the declarations are still data and can be utilized in code. I think we'll have some interesting applications of this idea soon...

</comment></comment><comment><USER13> Great stuff, thanks for releasing this. Definitely going to use it soon.

<comment><USER10> Thanks so much. We spent a long time thinking about how to have the benefits of types in a Clojure-y data-oriented way. The advantage of having Schemas as data is that we can use Clojure code to process them and generate things like Objective-C classes ([https://github.com/Prismatic/schema/blob/d82bf0b049fc1205a81...](https://github.com/Prismatic/schema/blob/d82bf0b049fc1205a81a79d88a84872bb9f9846b/src/clj/client/objc.clj)) and Avro specifications. It will be our glue to declarations in other languages.

</comment></comment><comment><USER14> What timing! I have been making this exact thing myself.

Would you be interested in pull requests making your api simpler? Maybe allow parameters to not have to have shapes? Perhaps allowing a syntax that allows a simple way to shapes in the meta alongside the ability to change the signature for people who don't want to couple too tightly to the library? When I showed mine to my local user group last month, that was one of their biggest requests (that I was in the middle of on mine but would be happy to attempt in yours).

Check my (simpler and more immature) library here [https://github.com/steveshogren/deft](https://github.com/steveshogren/deft)

<comment><USER14> Also, what about having your defn macro generate a second function like foo-t that just calls with-fn-validation on foo, to clean up that extra call? Would you be interested in such a pull request?

<comment><USER8> I'd have to think about that a bit -- I'm hesitant to create names not provided by the user, but maybe there is another way.

Quite honestly that part of things (turning validation on and off, etc) isn't really done yet -- we have plans to make it much more flexible and powerful, but haven't got there yet.

</comment></comment></comment><comment><USER15> Interesting work. BTW, there's a typo: "shee here" should be "see here".

<comment><USER16> I assumed it was meant to be read in Sean Connery's voice.

</comment></comment><comment><USER17> I feel your argument against just using Scala was weak, but you guys are obviously smart and feel building Schema was the right choice. So could you elaborate a bit on the decision to stick with Clojure when your problem domain lends itself to types?

<comment><USER18> My guess would be they want to continue using a Lisp-style language.

</comment></comment><comment><USER19> Very interesting. I have a somewhat related project called Herbert, which attempts to define a schema language for EDN.

[https://github.com/miner/herbert](https://github.com/miner/herbert)

</comment><comment><USER20> Newbie here, mostly familiar with OOP.

What is the difference between how Clojure and other functional programming languages declare types.

<comment><USER21> Seems like the major distinctions I see here compared to say Haskell (and Scala to the degree that Scala is equivalent to Hs) is that Schema are dynamic and first-class.

Dynamic means that their usefulness is tied somewhat to your ability to exercise code paths. Compare this to Hs's static types where the type logic of your entire program (and all dependent libraries) is checked upfront before compilation. Schemata likely must be triggered by a validation function being called on live code. Endless further argumentation about this distinction goes here.

First-class comes from Schema's dynamic nature as well but is worth further investigation. Schema look like they can be arbitrary functions of the arguments, much like inserting `assert`s at the beginning of a function and then flipping those on or off at a later time. They can also be composed/decomposed/analyzed as Clojure values. This vastly increases the flexibility and complexity of Schema for better and worse. You can express much more sophisticated invariants in your Schema than you can in Haskell types. It looks like it's even possible for these invariants to be value- based—a concept which, in static typing land, is deep into research territory.

I'd say these contract-like invariant checkers are in a pretty different boat from static types. They check different classes of things at different times and make vastly different promises. What they both provide however, so long as your Schema don't get too complex, is some wonderful "living" documentation.

</comment></comment><comment><USER22> This looks like it occupies the same space as core.contracts and core.typed. Is the main benefit, over those two, cljs support?

<comment><USER8> I think there are a few benefits.

First and foremost, schemas are _simple_ , minimal, easy to read and write, and gracefully extend Clojure's existing type hints. This means that (in my biased opinion) they are significantly better for documentation, which was the primary motivation for developing them.

Second, schemas are data, so it's easy to do more with them beyond documentation. Runtime data validation is one such use, but we can also easily do things like generate core.typed annotations, generate model classes for clients, generate test data, and so on.

<comment><USER7> Author of core.typed here.

I will challenge that schemas are "significantly" better for _documentation_ than core.typed types.

With unions, intersections, heterogeneous maps, parameterised classes, recursive types we can be _very_ expressive.

Here's some examples of the syntax for types: [https://github.com/clojure/core.typed/wiki/Types](https://github.com/clojure/core.typed/wiki/Types)

And some declarative types in action: [https://github.com/frenchy64/core.typed- example/blob/master/...](https://github.com/frenchy64/core.typed- example/blob/master/src/fire/simulate.clj#L42)

I think core.typed is restrictive enough to allow annotations like the one above, while being opinionated enough to guide the programmer to write clear, comprehensible types.

<comment><USER8> Sorry, that didn't come across the way I wanted -- it certainly wasn't meant as a dig on the expressiveness or power of core.typed, which is a project I'm really excited about.

The main driver for Schema was to make annotating function inputs and outputs as simple and readable as possible. Personally, I find annotations directly on the function arguments easier to parse than separate function type declarations, but I suppose that's a matter of preference.

<comment><USER7> No problem, just was eager to clarify :)

FWIW there are macros like fn> that allow you to write (fn> :- Number [a :- Symbol] 1), but you lose the ability to write ordered function types with multiple cases, so I don't use it very much.

</comment></comment></comment></comment></comment><comment><USER23> pretty cool - I've used something similar for python JSON validation:

[https://code.google.com/p/jsonvalidator/](https://code.google.com/p/jsonvalidator/)

but love the idea of something for validating nested data structures as well.

<comment><USER24> I had come across another schema validation lib for Python on Github a while back (but never tried/used it):

[https://github.com/halst/schema](https://github.com/halst/schema)

</comment></comment><comment><USER25> This is excellent. I used to occasionally use assertions to accomplish the same thing.</comment>


The Right Time - <AUTHOR> http://akashkgarg.com/essay/therighttime.html

<comment><USER2> Congrats. Its nice to know that companies are still threatened by single individuals. I'm sure this happens all the time though. A threat by a large organization is usually enough to get you to stop what you are doing. If you fight it you go broke. What choice do you have at that point.</comment>


Mente digital Agencia de SEO - <AUTHOR> https://mentedigital.es/ <comment><USER2> Protip: If you post in some forum to get "organic" links, remember to post in the language of the forum to get a better response and avoid flagging.</comment>


The Case Against Civilization: Did our hunter-gatherer ancestors have it better? - <AUTHOR> https://www.newyorker.com/magazine/2017/09/18/the-case-against-civilization <comment><AUTHOR> I really wish that website titles actually reflected article titles.</comment>


Peter Thiel on what works at work (2014) - <AUTHOR> http://www.washingtonpost.com/news/on-leadership/wp/2014/10/10/peter-thiel-on-what-works-at-work/

<comment><USER2> [https://hn.algolia.com/?query=Peter%20Thiel%20on%20what%20wo...](https://hn.algolia.com/?query=Peter%20Thiel%20on%20what%20works%20at%20work&sort=byPopularity&prefix&page=0&dateRange=all&type=story)

</comment><comment><USER3> I really like the idea that you should live every day as though it's going to go on forever instead of living it like it's the last one.

<comment><USER4> Reminds me of Nietzsche's thoughts on Eternal Recurrence. Instead of living each day like it's your last, you live each day like it will be repeated indefinitely in exactly the same way:

>The greatest weight. -- What, if some day or night a demon were to steal after you into your loneliest loneliness and say to you: "This life as you now live it and have lived it, you will have to live once more and innumerable times more; and there will be nothing new in it, but every pain and every joy and every thought and sigh and everything unutterably small or great in your life will have to return to you, all in the same succession and sequence -- even this spider and this moonlight between the trees, and even this moment and I myself. The eternal hourglass of existence is turned upside down again and again, and you with it, speck of dust!" Would you not throw yourself down and gnash your teeth and curse the demon who spoke thus? Or have you once experienced a tremendous moment when you would have answered him: "You are a god and never have I heard anything more divine"? If this thought gained possession of you, it would change you as you are, or perhaps crush you. (GS 341)

[http://myweb.lmu.edu/tshanahan/Nietzsche- Eternal_Recurrence....](http://myweb.lmu.edu/tshanahan/Nietzsche- Eternal_Recurrence.html)

</comment></comment><comment><USER5> "The internal management application of this is that it's always a bad idea to set one's employees too much against one another. You want to find ways to differentiate people's roles. Frame it this way: If you were a sociopathic boss who wanted to create trouble for your employees, the formula you would follow would be to tell two people to do the exact same thing. That's a guaranteed formula for creating conflict. If you're not a sociopath, you want to be very careful to avoid this."

Love this quote. Especially relevant in large organizations, where the probability of such conflicts occurring by chance increases with headcount. And it's especially worse when execs encourage it.

</comment><comment><USER6> Ironic that after beginning the interview with "What's a question you always hope you'll be asked in interviews, but no one ever seems to ask you?" it concludes on the same note that many of these kinds of interviews do: "What's it like to be a billionaire?"</comment>


A Cloud and a Prayer - <AUTHOR> http://www.subtraction.com/2008/10/15/a-cloud-and-a-prayer <comment><AUTHOR> As Gruber observed: _Make note of the exits_.</comment>


Ethan Zuckerman: On Me, and (Leaving) the Media Lab - <AUTHOR> http://www.ethanzuckerman.com/blog/2019/08/20/on-me-and-the-media-lab/ <comment><USER2> I think it's one of the best letters of resignation that I've ever seen.

The question it raises for me, though, is where he can go that will have a source of grant money that is sufficiently "safe". I applaud Ethan's adherence to ethics, but I personally don't know that a truly ethical approach is actually possible.

If "one hop" from Epstein is too close, how about two hops --- say, money donated from a foundation that Epstein contributed to? Three hops? Four? What about money coming from people who have associated with Epstein in the past?

For that matter, is it just Epstein, or are their other irredeemable sources as well? I don't suppose Idi Amin has a charitable foundation, but what about money with Nazi ties? What about Saudi money? Israeli? US?

Where does one draw the line? Is it just a matter of what one is personally comfortable being associated with, or is there some coherent principle that can be drawn upon?

<comment><USER3> I imagine it's not just the money, but also loss of trust in this particular person (Ito) for making the choices they did and not being up front about them at the time. Once you can't depend on the people you need to trust to be trustworthy, it's time to go.

A good coherent principle is "if everyone knew about this, what would happen?"...

</comment></comment><comment><USER4> We changed the URL from [https://medium.com/@EthanZ/on-me-and-the-media- lab-715bfc707...](https://medium.com/@EthanZ/on-me-and-the-media- lab-715bfc707f6f) to the author's own site.</comment>


Social Security Not Keeping Up with Seniors' Rising Costs - <AUTHOR> http://www.foxbusiness.com/features/2017/05/07/social-security-not-keeping-up-with-seniors-rising-costs.html <comment><USER2> This blatantly seemed like an advertisement for HR 1902, so I pulled up the bill, full text here: [https://www.congress.gov/bill/115th-congress/house- bill/1902...](https://www.congress.gov/bill/115th-congress/house- bill/1902/text)

While I was able to pull out some really key bits \- Personal SS tax/employer SS tax up from 6.2-7.4% \- Self employed up from 12.4-14.8%

so much of the text is just.... noise. There are useful bits in there but I feel like I'd need to whiteboard out a fucking diagram just to make sense of it. Since I assume this is intentional I'd be curious if anyone with a better nose for things can elucidate what the key points I'm missing are, since at this point (at the risk of taking an opposing point to what is ostensibly a "nice ideal") it seems to be just another push to supplement elderly benefits at the cost of the existing worker, rather than a more holistic strategy.

(as an aside; the whole CPI-* index choice thing seems like its own sort of P-hacking. Perhaps not in this case since E->elderly->relevant, but having read up on how much these indices are shifted/restructured/how many there are, it speaks to the data engineer in me to the end of "I can pick an index to say whatever I want it to, and I'm sure the index writers are doing the same")</comment>


CSS Front-end Frameworks with comparison - <AUTHOR> http://usablica.github.com/front-end-frameworks/compare.html?v=2.0

<comment><USER2> Really great comparison chart. One thing that I, personally, would like to see is the relative sizes of each of the libraries (or at least their core, minified includes). While it certainly wouldn't control my decision of which framework to use, it would certainly be interesting to see which frameworks achieve what functionality with x amount of code.

<comment><USER3> Also helpful would be a brief list of functionality so you can make a comparison more fairly. Bootstrap's minified 122kB css weight (with responsive) is huge compared to that of Skeleton's 12kB, but the former has more features. Or Toast, with it's 3.7kB min size but even fewer features than Skeleton.

Skeleton: <http://www.getskeleton.com/>

Toast: <http://daneden.me/toast/>

Bootstrap: <http://twitter.github.com/bootstrap/>

<comment> johnx123-up FWIW, I think, Helium is the winner here under 30kb with Bootstrap look <https://news.ycombinator.com/item?id=5108821>

</comment></comment></comment><comment><USER4> Foundation 4 is ie9+ while there is a snippet to enable the grid for ie8 and the rest should mostly work just fine <http://foundation.zurb.com/docs/support.html> Foundation 3, which is still supported, is ie8+ <http://foundation.zurb.com/old-docs/f3/support.php>

Bootstrap will also soon drop ie7 support in the 3.x branch.

<comment><AUTHOR> Thanks for your information and excuse me for this problem. We just manage this project on Github, <https://github.com/usablica/front-end-frameworks>

Could you please report a bug for us?

<comment><USER4> np, submitted there

</comment></comment></comment><comment><USER5> I hate to be that guy, but the chart would be a lot more useful if the colors were used to communicate something rather than just being pretty. Ideally items that were better (e.g. were compatible with older versions of a browser) would have more visual weight than those that were worse. The less/sass and tablet/desktop sections do it better, but the browser section is pretty useless.

<comment><AUTHOR> Thanks for your suggestion, but can I know why you think the browsers compatibility column is useless? Should I change it to something better?

<comment><USER6> I think he means that the browser compatibility column should take advantage of color as well. Maybe more attractive/brighter colors could be representative of frameworks that are compatible with older browsers.

<comment><USER5> Exactly. Browser compatibility is an important factor and is definitely useful; it would just be nice if a quick glance could tell me whether a particular framework was "more" or "less" compatible.

</comment></comment></comment></comment><comment><USER7> I really like Bourbon Neat: <http://neat.bourbon.io/>

<comment><AUTHOR> Hhhm, nice framework. We'll add it for next version, thanks.

<comment><USER8> Please do! Bar none, it's my favorite CSS framework out there!

</comment></comment></comment><comment><USER9> Missing root-css which is based on Stylus, and is imo the best framework.

<comment><AUTHOR> Could you please submit an issue on our Github for that?

</comment></comment><comment><USER10> Great. It would be nice, to compare the size in KB also.

<comment><AUTHOR> Sure, yeah.

</comment></comment><comment><USER11> More detailed comparison of LESS frameworks: <https://coderwall.com/p/spkngq>

<comment><AUTHOR> Cool!

</comment></comment><comment><USER12> Great list. What criteria are you using to sort this list?

I think it would be helpful to show the date of last development activity for each framework, be it a most recent github commit or release date of latest version. Some of the frameworks haven't been updated in over 3 years and it would be nice to distinguish these quickly.

<comment><AUTHOR> Currently there's no mechanism for their sorting, but we'll add it for next versions, good idea.

</comment></comment><comment><USER13> I used 960gs for the first time last night, to build the template for <http://daeken.com/> (had to finally switch from Posterous). It was amazingly simple, even for someone completely CSS brain-dead. Really can't say enough good things about it.

</comment><comment><USER14> neat. not digging the contrast in the browser section though. also, is there really a need to show the huge barely visible browser icon next to each figure? just use browser icons (in their native colors) as column headers.

<comment><AUTHOR> Thanks. Yeah good idea, I think we can change the table to prevent redundant data.

</comment></comment><comment><USER15> Am I the only one looking at the 34 items in the list (34!!) and thinking "do we really need all of these?" Isn't the sheer volume of new stuff constantly coming out gone a bit out of hand?

</comment><comment><USER16> What is the meaning of "SASS" and "LESS" column ?

<comment><AUTHOR> Shows the stylesheet language that used in the framework. lesscss.org or sass- lang.com

</comment></comment><comment><USER17> This feels a bit sneaky: <http://cl.ly/image/3c0A471T1K1X>

<comment><AUTHOR> Ow, sorry :) I think we should change the text of the box.

</comment></comment><comment><USER18> Sorry, but didn't someone release one of these all of two weeks ago? Sad times...

</comment><comment><USER19> Oh, Block's grid system looks sweet, I've got to take a better look at that.</comment>


Got mobile? This is for you: Startup 2.0 Mobile Apps competition - <AUTHOR> http://blog.tetuanvalley.com/2011/05/got-mobile-this-is-for-you-startup-2-0-mobile-apps-competition.html

<comment><USER2> We have just submited our app!

<comment><USER3> 1 vote with love from Mentalmas!!

</comment></comment><comment><USER3> Wow!! I'll try to go!! :-)</comment>


Increasing readability, and accessibility, one definition at a time - <AUTHOR> http://webdragon.com.au/2236

<comment><USER2> Very few sites actually make use of <abbr> and <acronym> tags, when they would be handy for people without any disabilities, much of time.</comment>