Solar-Powered Trash Cans Saved Philadelphia Almost a Million Bucks Last Year - <AUTHOR> http://motherboard.vice.com/blog/solar-powered-trash-cans-saved-philadelphia-almost-a-million-bucks <comment><USER2> > Before BigBelly, trash collectors had to clear out each can three times a > day. Now they do so three times a week.

Living in center city Philadelphia, I can confidently say there are a couple unintended reasons these things may require less emptying: First, they're often so dirty that no one would want to grab the handle and open the door to throw trash in (I avoid them at all costs myself). Who wants to touch a trashcan even when it's clean? Second, if you're willing to grab the trash- encrusted handle and open the door, they're frequently jammed (or locked?) shut. On the few occasions where I was forced to use them because there were no other trashcans in sight, they were difficult or impossible to open.

So what do people do? They throw their trash on the ground, or they find a nearby trashcan that doesn't require contact to use. It's not unusual to see bags of trash sitting by these things with random garbage scattered around or on top of them.

<comment><USER3> This has certainly removed any lingering desire I might have had to visit Philadelphia.

<comment><USER4> Any philadelphians or visitors to philadelphia want to chime in? I want to visit it due to history and architecture.

Is the city center doing well, or decaying? I know some cities have vibrant cores but decaying inner peripheries. (i.e. between downtown and newer suburbs)

<comment><USER5> What killed my inclination to visit Philly was the Bill Burr rant (Google Bill Burr philadelphia incident). It may not be the same now, and that was a few years back, but just the thought that such a big crowd can be such jerks -- and I know the relative sample size is small and skewed (drunk) -- just destroyed my urge.

The big reason I wanted to visit was the history, and also (this might seem silly) because Bill Cosby is from there.

<comment><USER6> For the record that didn't happen in Philadelphia it happened in Camden NJ which is across the river. Clearly a lot of people in attendance were from Philly but they were also from NJ and other surrounding areas. Also it happened at an Opie and Anthony event, so you can imagine what sort of crowd was there.

It's also notable that they stopped doing those events at all because booing of new comedians was a general problem everywhere.

Philly does have a lot of problems, but it annoys me that we have a reputation as particularly bad crowds at sporting events etc based on a few notable incidents. If you look at basically any other city where large crowds of drunk obnoxious people congregate they have similar incidents.

<comment><USER7> If ever there was a city that deserved the _Escape From New York_ "wall it off and write it off" treatment, it is Camden. Thankfully the Delaware River really does an effective job at keeping that rot at bay.

Philly _really_ isn't that bad... though I suspect many HNers who are used to the shinier west coast cities would experience a bit of culture shock.

</comment></comment></comment></comment></comment></comment><comment><USER8> Perhaps they've gotten their cost issues under control now, but this 2010 report from the Philly comptroller points out a whole bunch of problems: [http://www.philadelphiacontroller.org/publications/other%20r...](http://www.philadelphiacontroller.org/publications/other%20reports/BigBellyReport_7-12-10.pdf)

The report shows all sorts of maintenance issues that weren't accounted for. It takes longer to empty the bags on these units, for example.

I helped write a proposal to buy some of these units (albeit for a university campus, not streetside in cities), and we didn't find any significant cost savings. The appeal is the PR/image boost of having solar panels on every trash can. It looks like you're doing something sustainable, even if the numbers don't add up.

<comment><USER9> It isn't even that noble. The reasons that cities bought them is that the Federal stimulus paid for them.

The machines jam in the winter, the batteries have a shelf life, and they become filty and disgusting in the summer heat. The company is a good at lobbying though.

<comment><USER10> No-bid contract - I remember when this was a big deal on the news for a while. Reminds me of the alcohol vending machine debacle (thankfully it seem that we are closer to privatizing our liquor stores in recent weeks).

These things were so bad Wegman's thought that they were hurting their business. [http://articles.philly.com/2011-06-13/news/29653045_1_wine-k...](http://articles.philly.com/2011-06-13/news/29653045_1_wine- kiosks-wine-sales-vending-machines)

</comment></comment></comment><comment><USER11> Has anyone run the numbers on the $900K?

I'm thinking, a million people actually live in the "served area" and maybe one public trash can per thousand people, so figure a thousand cans.

900K divided by 365 is about three K per day.

Combine a thousand cans and emptied three times per day and 3K per day budget and you end up with emptying a can costs a buck.

Lets say each garbage man works 8 hours and never slacks off and only takes 5 minutes average to drive from can to can and empty. Anyway I'm thinking a thousand cans times three times a day means 3000 drivebys times 5 minutes each means 15000 minutes expended per day with the old system driving to visit each can. Now realize that you're not going to save any drive time using the solar cans. But for the sake of amusement we'll try it. Now 15 kilominutes given an 8 hour working day results in thirty or so trash trucks and garbage men under the old (and new...) system.

Not sure if that's reasonable or not. A couple workmans comp cases and the next million empties are going to cost an extra buck, sure. On the other hand, its hard to imagine burning a dollar of diesel between each can. Philly just isn't that big. Then again, if each garbage man was paid $30K per year aka $15/hr and emptied about ten cans per hour, thats $1.50 per empty so factor in lower pay.. But how do you actually save money if you have to drive the same old route anyway?

Interestingly the economics of big city garbage pickup begin to make it look reasonable to simply have the post office mail trash to the landfill. Its not many orders of magnitude apart, and fundamentally junkmail delivery isn't all that far away from garbage pickup. So it should cost about a "postage" amount.

<comment><USER12> And there's no mention of the cost of the trash cans themselves. I've found that governments are fond of flouting operating cost savings while incurring massive capital costs.

For instance, my local transit agency purchased several hybrid-electric buses that cost $200,000 more each than a regular bus, but only improve fuel usage by 0.6 miles per gallon, saving at most a few thousand dollars per year. The agency of course pulled a full court press on how much fuel was being saved but wouldn't discuss the additional cost of the bus itself that made the purchase a complete waste of money.

<comment><USER13> Which agency?

The Feds are mostly responsible for the love of hybrids that US agencies have. The extra fed funding that agencies get for hybrid buses make it worth it for them, and the fuel savings is the cherry on top.

</comment></comment></comment><comment><USER14> I can definitely see the value in savings. You have to wonder about the costs of maintenance and vandalism though.

In a city like SF, the people here quickly break these. The biggest problem would be the homeless breaking into the machines for cans and such. Hooligans would spray paint the tops because they think its cool to burn the world and be "individual".

Our cans are industrial strength green concrete batteries with heavy wire tops that allow for easy access.

<comment><USER7> In Philly I would consider these sorts of trashcans self-vandalizing. Hooligans don't bother because they get trashed by normal use anyway; much better to spend precious hooligan time vandalizing nicer things, such as regular trashcans.

</comment></comment><comment><USER15> Neat idea, neat solution, but the problem with articles like this is that it leaves out the other half of the equation - what was the marginal capital cost? Ie, if they cost $100M (for hyperbole's sake, which clearly they did not), saving $900K a year is a pretty awful return on capital.

<comment><USER16> The city spent $2.2M for the compactors, including installation and a service warranty. The estimated cost savings from the spend was $13M over 10 years; if they saved $900,000 in the first year that looks like a reasonable estimate.

<comment><USER17> Assuming they last the predicted 10 years. Someone else linked [http://www.philadelphiacontroller.org/publications/other%20r...](http://www.philadelphiacontroller.org/publications/other%20reports/BigBellyReport_7-12-10.pdf) which says:

"Issue: Contract compactor specifications on expected life of product vague and not supported by data.

"The contract included compactor specifications that included an expected life of 10 years. When questioned about data or research to support this expected life, the BigBelly Solar CEO stated the life expectancy was an estimate based on the type of products and materials used in the compactors. He further stated that the compactor had a life expectancy that was estimated similar to an automobile; in that some repairs and parts may need to be made during the normal life cycle, but full replacement may not need to be made for theyears. When asked if there was any testing data to support the 10 year life expectancy, he indicated that he was not aware of any specific data."

</comment></comment></comment><comment><USER18> > It's not a rich city, like New York or San Francisco, with cash to dump into > sprawling bike lanes ... It's great that New York can install ... high-end > bike-sharing programs. But ...

Bike lanes can bestow great economic benefits, from reduced healthcare costs to reduced pollution, fewer fatalities on the roads, less congestion, less stunting of children's intellectual development, etc. It's a shame people are ignorant of these benefits and choose to disparage bike infrastructure as an example of profligate and unnecessary spending (I recently read another article doing the same for London's cycling infrastructure plans over the next decade).

LSE Study: [http://www.guardian.co.uk/lifeandstyle/2011/aug/21/cycling-3...](http://www.guardian.co.uk/lifeandstyle/2011/aug/21/cycling-3bn- uk-economy-study)

The Lancet: [http://www.guardian.co.uk/environment/2007/jan/26/pollution....](http://www.guardian.co.uk/environment/2007/jan/26/pollution.transportintheuk)

USC Study: <http://econweb.umd.edu/~ham/test%20scores%20submit.pdf> [PDF]

Economic Benefits: [http://cyclingresourcecentre.org.au/page/cycling_benefits_ec...](http://cyclingresourcecentre.org.au/page/cycling_benefits_economic)

More bike lanes, fewer gimmicky solar-powered trash cans, please.

</comment><comment><USER19> > Before BigBelly, trash collectors had to clear out each can three times a > day. Now they do so three times a week.

Sounds like a simpler solution would be to - use larger trash cans!

</comment><comment><USER20> _trash collectors had to clear out each can three times a day. Now they do so three times a week._

Or you know they could have been smart about it, if the can wasn't full several collections in a row cut the pick up rate for that particular can. It starts being full/overloaded up the collection rate. Unless they are trying to say that this trash compactor is so good that it delivers 60x(3 times a day * 7 days a week * 3 weeks) space efficiency which doesn't seem likely. Maybe the new cans are larger?

<comment><USER21> That would be 7x space efficiency. It was 3 times a week - not every 3 weeks.

<comment><USER20> Thanks miss read that bit. 7x sounds more doable by a compactor.

</comment></comment></comment><comment><USER22> I remember when these went in in Philly a couple years ago... often on well- shaded corners, not such a great match for solar powered compaction I'd think.

No doubt the new bins reduce the amount of waste collected, a) because nobody wants to touch the grotty handles, and b) it isn't possible to fit anything much bigger than a loaf of bread. However, could they possibly reduce the amount of waste generated? Where is the rest of it going?

Center City also has a crew of workers to operate noisy, walk-behind, teal street sweepers. I'm not sure if these actually pick up garbage, but at any rate it would be a delight to see them pull a tour of duty on Snyder Ave. instead of Market.

</comment><comment><USER23> Saving a city the size of philly a million dollars doesn't sound like very much to me. How was the million saved? Is that accounting for the time and energy spent installing and maintaining these?

</comment><comment><USER24> Interesting article, although it doesn't break down where the savings come from. It appears that most of the savings come from the compaction and communication about the cans being full. Given that solar is still often of questionable cost-efficiency (especially, I would imagine, on sidewalks in Philadelphia), I would think that not much of it comes from the solar aspect (unless the cost of hooking up the cans to power or changing a battery is high). The article doesn't really make it clear.

<comment><USER25> The article makes it pretty clear.

Third paragraph:

"...communications systems for real-time reporting on a bin's capacity. By allowing municipalities to service the BigBellys only when they are full, they are saving hundreds of thousands of gallons of fuel annually across all BigBelly units."

Fourth paragraph:

"...information gained from each compactor allows waste managers to optimize collection schedules and routes. Before BigBelly, trash collectors had to clear out each can three times a day. Now they do so three times a week."

<comment><USER26> The hourly cost of labor for a couple of unionized employees (the minimum would probably be a driver and a loader) is probably greater than the hourly cost of the fuel that's used, especially if they're running overtime. Factoring in employee costs like health insurance, pensions and vacation time, I'd guess at least $100 per hour for a two-man crew. You can get many gallons of diesel for that amount, especially if you purchase in bulk for a fleet of city vehicles.

Also, the number of garbage trucks that the city would need to own would go down, as would the number of employees needed to maintain them.

I think the article emphasized the fuel savings because they didn't want to explicitly call attention to the fairly obvious conclusion that this efficiency improvement, if successful, would cause lots of city employees to lose their jobs.

<comment><USER27> they said they didn't get rid of personnel just now use them for the recycling program

</comment></comment></comment></comment><comment><USER28> How do you reduce collections from 21 times a week to 3 times a week (more than an 80% reduction) for a city the size of Philadelphia and _only_ save 900k?

<comment><USER29> They don't mention it, but I assume collections take a lot longer. My parents used to have a trash compactor in the kitchen, and let me tell you taking out a 90 lb. block of trash once every three weeks was way worse than tossing a 10 lb. bag every other day.

<comment><USER30> Sweet stink! How do trash compactors deal with rotting food accumulating for much longer times?

<comment><USER31> I have no personal experience with trash compactors, but it seems like compacted trash would have poor oxygen exchange that would inhibit decomposition.

</comment></comment></comment></comment><comment><USER32> In Boston they started putting advertisements on the sides of the machines...any other cities seen this? I wonder how much additional revenue it drives.

</comment><comment><USER33> I remember when the Phillies got into world series the police had to go all over the city grabbing these things, so they could switch them out for the oldschool wire-frame cans, so that night when the riots hit there wouldn't be as much dmg.

Do they add in these kinds of unexpected costs in their calculation?

</comment><comment><USER34> That's probably because it's Always Sunny in Philadelphia :P

</comment><comment><USER35> Loving all the vice links on HN these days.</comment>


Show HN: Merge Spreadsheets – Easily Combine Multiple Spreadsheets - <AUTHOR> http://www.mergespreadsheets.com <comment><AUTHOR> Hi guys,

I made this tool to vertically combine multiple spreadsheets and CSV files. There are many ways to do this, Pandas in Python provides a great set of features, but I found myself repeatedly writing and tinkering with my set of functions for this often used task.

Hope it helps and let me know any questions and feedback!

</comment><comment><USER2> This is so useful! Thank you for this.</comment>


Islet transplantation may correct type 1 diabetes, study says - <AUTHOR> http://www.upi.com/Health_News/2016/04/18/Islet-transplantation-may-correct-type-1-diabetes-study-says/8751460996474/?spt=hs&or=hn <comment><USER2> As a type 1 I'm obviously interested in such development. But if they do it only "for people unable to safely control type 1 diabetes" there must be a serious downside.

Ah, they only say this in the image caption but you have to take the immunosuppressives forever to keep the injected cells. Some of my own cells are still alive so I could just start taking these drugs to protect them from my immune system. I don't think I want to though.

<comment><USER3> There is another technology that, I think, MIT developed which is a sort of envelope for cells that can protect them from antibodies without immunosuppressive drugs.

<comment><USER3> "researchers have designed a material that can be used to encapsulate human islet cells" – [http://news.mit.edu/2016/pancreatic-cells-diabetes- treatment...](http://news.mit.edu/2016/pancreatic-cells-diabetes-treatment- insulin-injections-0125)

</comment></comment></comment><comment><USER4> Very interesting and promising.

A related approach is to implant the islets in a "pocket" under the skin, which supposedly is easier to monitor and requires less immuno-suppressing drugs [1,2].

[1] [http://www.nature.com/nbt/journal/v33/n5/full/nbt.3216.html](http://www.nature.com/nbt/journal/v33/n5/full/nbt.3216.html) "mirrored" here [http://www.cnd.mcgill.ca/~ivan/Papers/islets_nbt.3216.pdf](http://www.cnd.mcgill.ca/~ivan/Papers/islets_nbt.3216.pdf) [2] [http://www.pnas.org/content/110/47/19054.full.pdf](http://www.pnas.org/content/110/47/19054.full.pdf)

</comment><comment><USER3> I imagine this approach is less effective than another recent approach where they put "insulin-making islet cells onto a layer of fat in the recipient's abdomen", right? ([http://www.endocrineweb.com/news/diabetes/17843-no-more- insu...](http://www.endocrineweb.com/news/diabetes/17843-no-more-insulin- shots-thanks-new-type-islet-cell-transplant))

</comment><comment><USER5> Grafting islets onto kidneys was being trialled in rats a decade ago. It pains me to see how slowly medical science progresses.

</comment><comment><USER3> Will this be able to be used in combination with the growth of Beta cells? ([http://hsci.harvard.edu/diabetes-0](http://hsci.harvard.edu/diabetes-0))</comment>


Calculus in 20 Minutes - <AUTHOR> http://www.youtube.com/watch?v=EX_is9LzFSY <comment><USER2> Awesome recap.. That link is to the first ten minutes only though, here's the link to the second half:

[http://www.youtube.com/watch?v=Q9OkFTDG4fY&feature=relat...](http://www.youtube.com/watch?v=Q9OkFTDG4fY&feature=related)

<comment><USER3> Why can't my professors be like this? I cracked up when he pulled out the bowl.

<comment><USER4> Exactly, if my professor was like this, I probably would have gone past Calc II.

</comment></comment></comment><comment><USER5> I love it. "Computers know calculus, everyone knows calculus, you've got to learn calculus."

<comment><USER6> <http://www.amazon.com/Calculus-Michael-Spivak/dp/0914098896>

I am learning calculus from this book on my own. It's great if you already know a lot of logic.

</comment></comment><comment><USER7> Whoa, that was bizarre. I just finished taking the online course of his a few days ago.

</comment><comment><USER8> A nice recap :)

</comment><comment><USER9> A nice recap, I doubt anyone can just pick up calculus from this.

Plus, calc 1 was a breeze, calc 2 is where the brain-pain started.

<comment><USER10> Out of interest, I've never heard this naming scheme (calc 1, calc 2, etc?) back in the UK but it seems quite common in the US. Is the content of these courses very standardized? How far does the sequence go?

<comment><USER11> It's very standard.

Calc 1: Differentiation up to the Chain Rule, with applications like maximization problems. Basic integration, up to the Substitution Rule.

Calc 2: More-difficult integration techniques (integration by parts, trigonometric substitution, partial-fraction decomposition), infinite series. Most people find Calc 2 the toughest because of the infinite series.

Calc 3: Multivariate calculus, partial derivatives, lots of 3D stuff. Easy, intuitive, spatial.

<comment><USER12> These are highschool courses or? We did that in highschool (allthough it was repeated in university as well). I suspect the russians are learning that in primary school, because they are so good at math. ;)

<comment><USER13> It depends on the person. I went through the series in highschool, but many (most?) people do it in college and some never get through it at all.</comment></comment></comment></comment></comment>


I Learned to Code My Own Game - <AUTHOR> https://www.youtube.com/watch?v=s12npdDmGUc&feature=youtu.be <comment><AUTHOR> The title is actually "How I Learned to Code My Own Game" but HN stripped out the "How".

I found his comment about not being able to get past a terminal screen but immediate visual feedback did the trick extremely interesting and it totally makes sense.

Not being to decipher most of the error messages stuck out as well as a place where most beginners will probably give up.</comment>


Why I Drilled Holes in My MacBook Pro and Put It in the Oven - <AUTHOR> https://ifixit.org/blog/6882/why-i-drilled-holes-in-my-macbook-pro-and-put-it-in-the-oven/ <comment><USER2> Blimey. Just goes to show, someone can be intelligent in one area (programmer), but not capable in another - that "circle" is horrific, looks like it was done by a four year old!

(I say this as someone who is a competent mechanical engineer, mechanic and welder, but whose programming you guys would rip to shreds!)

</comment><comment><USER3> Earlier discussion: [https://news.ycombinator.com/item?id=8813883](https://news.ycombinator.com/item?id=8813883)</comment>


At McDonald's, the Happiest Meal Is Hot Profits - <AUTHOR> http://www.nytimes.com/2009/01/11/business/11burger.html?_r=1&hp=&pagewanted=all <comment><USER2> Not sure if this is still the case, but McDonalds made more money off real estate than from selling food. Apparently McDonalds franchises don't own the restaurant property they sit on. McDonalds rents it to them -- and that accounts for a significant fraction of McDonalds revenue.

Link: [http://www.thegreatloan.com/What_20_the_20_Big_20_Players_20...](http://www.thegreatloan.com/What_20_the_20_Big_20_Players_20_Do.html)

<comment><USER3> I can't seem to locate a source now, but a few years ago I recall reading that McDonald's was either the #1 or #2 land owner in the world. The other? The Catholic Church.

<comment><USER4> PRIVATE land owner I would believe.

</comment></comment></comment><comment><USER5> Cheap food - the perfect counter-cyclical business model. For more of these, I recommend Marginal Revolution's "Countercyclical Asset" series ([http://www.google.com/search?hl=en&domains=www.marginalr...](http://www.google.com/search?hl=en&domains=www.marginalrevolution.com&sitesearch=www.marginalrevolution.com&q=countercyclical+asset&btnG=Search&sitesearch=www.marginalrevolution.com))

Also along the same lines, a link within that series is from September 28th, which states, "The Standard & Poor's 500 Index fell 8.4 percent, the most since Oct. 26, 1987, as only Campbell Soup Co. gained."

</comment><comment><USER6> Like or hate the food, McDonald's is a great company with a great brand. A few years ago I read "McDonald's - Behind The Arches" by John Love and realized how _agile_ they are. Ideas for new products are bubbling up from everywhere, and McDonald's seems focused on honing their product and throwing out old habits when they no longer work.

</comment><comment><USER7> I want a Big Mac now.</comment>


Ask HN: Best NoSQL methods for Rails - <AUTHOR>

Mongoid, Postgres with hstore, Postgres with the JSON data type, CouchDB? <comment><USER2> Recently investigating this myself. Mongoid is an Rails ODM for MongoDB. It seems like a nice one to start with as the interface is very close to ActiveRecord. I haven't looked at the rest you mentioned, but I've used the relational aspects of postgres; it's a great db, but if you're thinking about going NoSQL, why not go the whole way? Many serious companies are using these technologies for their businesses, and they seem to have matured over the past few years. A good place to get more information on MongoDB is: [https://university.mongodb.com/courses/catalog](https://university.mongodb.com/courses/catalog). BTW, one thing to be careful of when working with nosql is that you still need to model your data and you can definitely model relationships (just that they usually don't support joins at the db level). So, you could go through pretty much the same steps that you would when modeling data for a SQL db, but in the nosql case, it's easier to change the schema as you go. So you can imagine an Author entity, with a bunch of Book entities embedded in a single document (MongoDB or other document oriented stores). If later, you wanna add Book to another document, then you can separate Book into it's own document and add a relation. The difference with SQL is that you don't do joins in the db, but with Mongoid, you don't even see this as the relationships are defined in the models, and they're pretty much the same as ActiveRecord. Enjoy.</comment>


Using Go instead of bash for scripts - <AUTHOR> https://presstige.io/p/Using-Go-instead-of-bash-for-scripts-6b51885c1f6940aeb40476000d0eb0fc <comment><USER2> No thanks.

> I write those scripts so infrequently that I every time I need to re-learn > basics. How do I declare a function? How do I write if? How do I write a > loop? In bash, simple things are complicated. Finally, writing anything non- > trivial is a mess. Bash and PowerShell are not a good languages.

Yeah of course... because you don't know the simplest things in bash, they are complicated? And the conclusion is, that

        cmd := exec.Command("./myapp")
        cmd.Dir = getHomeDir();
        err = cmd.Run()
        must(err)

is more simple than

        cd "$HOME"
        ./myapp</comment>


GWT 2.0: So good it's ridiculous - <AUTHOR> http://timepedia.blogspot.com/2009/12/gwt-20-so-good-its-ridiculous.html <comment><USER2> While, GWT is a very impressive feat of technical accomplishment. It really misses the mark, the problem with it as well as most of the old desktop development (languages, toolkits, frameworks) is that it favored the developer over the designer. This is one of the reasons for the popularity of the web, it allowed the designer (and the want-to-be designer) the ability to design and build interfaces without having to know a turring complete languages.

When I first started looking to do more dynamic web applications, I was convinced that toolkits like GWT and Echo2 where they way to go but I was reasoning from a Java developers perspective. It makes the job of a Java developer easier, while adding complexity to the task of the designer. This is all well and good when you have a 1-5 man team of experienced Java developers.

I now prefer to use Java (Ruby, C, whatever) to write business logic services on the server and use HTML, css and JavaScript on the client. by writing a UI controller in JavaScript that gets embedded into the HTML file via a script tag it gives very clean separation of HTML, CSS and code this allows a large team to work very productively. Designers work in HTML, CSS. UX developers work in pure JavaScript and business domain developers work in their language of choice.

This coupled with a CMS has allowed us to abandon the kludge of a server side document scripting language (asp, jsp, php) entirely and significantly reduced the complexity of delivering a web application.

<comment><USER3> You should look at UiBinder (part of GWT 2.0). You write HTML and CSS, stick it into a UIBinder template. And in 5 minutes you can take a designed mock and have it bound to a Java class in a very efficient way.

You get things like CSS namespacing and obfuscation for free with this approach too.

<comment><USER2> Thanks, I will take another look at it.

</comment></comment></comment><comment><USER4> GWT always sounds interesting, but I am underwhelmed by the application gallery. Every app looks like a draft version of gmail, google maps or google wave. Any links to impressive interfaces (non google-built)?

<comment><USER5> We build TeamPostgreSQL with GWT. It is a PostgreSQL web administration package. Feel free to to take a look:

<http://www.teampostgresql.com>

The download package comes with a bundled sample database, so you can take it for a spin too. Feedback welcome.

<comment><USER6> I have some feedback:

\- I was totally confused how to launch this \- I couldn't discern any benefit of this over phpPgAdmin minus the nicely done interface \- I couldn't discern any benefit of this over Aqua Data Studio, NaviCat, et al. sans pricing.

I'm really curious why you chose to do this as a web app. If the benefit is to give "managers" and others access to the database to run reporting, where is the graphing, pivot table, etc support? If it's to give other developers access, your desktop counterparts (specifically Aqua Data Studio) provide tools you are lacking (code completion, diagramming). Granted there is a sizable price difference, which could be a selling point, but again phpPgAdmin does all that you do and is free and extensible because it's OSS.

</comment></comment></comment><comment><USER7> Those who like statc-typing will always find it ridiculously great. Those used to dynamic-typing will find the idea of writing JavaScript in Java ridiculous, but not great.

There is wisdom in the middle.

<comment><USER8> "Those who like static-typing will always find it ridiculously great."

People who actually like static-typing probably don't like Java, but something more like Haskell.

<comment><USER7> Let's call Haskell "extremely statically typed"

</comment></comment></comment><comment><USER9> How could trading the expressiveness of JS for the expressiveness of Java without the commensurate increase in performance be "So good it's ridiculous".

<comment><USER3> You clearly didn't RTFA.

I'll give you my personal reasons for liking GWT in a few short bullets.

1\. Better tooling - IDE refactoring when I need to change things. Red squigglies when I make a typo or reference something thats not there. A real debugger with breakpoints for finding bugs. Auto completion and auto style formatting so I dont have to type so goddamn much.

2\. Compiler optimizations - Your code gets faster and smaller. Write maintainable code, have it turned into performant code.

3\. API's and libraries - easy client server RPC, discoverable wrappers for the DOM APIs. Reuseable widgets that have predictable structure/side effects!

4\. Maintainable code base - If you worked with more than 4 engineers on a non-trivial product, you would understand the appeal of a Java code base. UIBinder lets me not worry about CSS name collisions.

I would go on, but you seem like a TLDR type of person, so it would probably be a waste of my time.

<comment><USER10> Was the personal attack at the end necessary?

<comment><USER3> Probably not. I sometimes get annoyed when people, faced with the choice of gaining some domain knowledge before forming an opinion, decide to instead just be loud about things they know little about.

Personal attacks are lame though, even on the internet. Thanks for calling me out on it :).

I apologize.

</comment></comment></comment></comment><comment><USER11> Pardon my ignorance but is there a clean way to run GWT with non-JVM server side languages?

<comment><USER12> Define clean.

<comment><USER11> Doesn't require some third-party (which tend to lag behind the latest versions) library to get it working and I can write normal server side code in Python, etc.

<comment><USER13> You can run a REST server and make your callbacks using JSON. That's what I did a while back. PHP could be used without problems.

<comment><USER14> I've done the same in the past (Python backend). I'll add one more suggestion on top of that. You can create JSNI bindings for all of the JSON RPC objects with GWT to get compile-time API checks that disappear entirely from the output.

</comment></comment></comment></comment></comment><comment><USER15> The problem with GWT is java, which makes it meh.

<comment><USER16> I've been working on a .NET clone of GWT as a side-project for awhile. It doesn't have a widget library yet, but it does have web-mode and development- mode. It works by decompiling MSIL which means you can use any .NET language you want.

<http://github.com/flaub/DotWeb>

Not much in terms of demos, but the core technology is all pretty much done. Plugins for FireFox (NPAPI-based) and IE work so that you can set breakpoints in Visual Studio. Web-mode does a decent job of optimizing right now because it does method dependency analysis.

<comment><USER17> Yo should make a post about it. Make sure to mention how it relates to similar Microsoft's own efforts.

</comment></comment></comment><comment><USER12> Yes GWT 2.0 is impressive but haven;t we had 3 submissions on that in the last week.

Surely nothing new is being said here.

<comment><USER18> Yeah, what we really need is more of those late-breaking Erlang articles!

<comment><USER12> No, we don't and i never said we did - but articles summarising the points that are already present as summaries in the GWT 2.0 release notes definitely do not add anything to the discourse.</comment></comment></comment>


Green Building at Stanford Just As Smart As People It Houses - <AUTHOR> http://blog.guykawasaki.com/2008/03/green-building.html

<comment><USER2> Straight from the penitentiary school of interior design:

<http://blog.guykawasaki.com/DSC_0166.jpg>

[http://www.gov.im/lib/images/dha/prison/gallery/awinginterio...](http://www.gov.im/lib/images/dha/prison/gallery/awinginterior.jpg)

</comment><comment><USER3> _Depending on what you put in the toilet, you select the power of the flushing action. What will people think of next?_

Toilets in Europe have had this feature for years.

</comment><comment><USER4> Too bad its not a more attractive building, given the very high construction cost. I would definitely have used a more dramatic approach to the southern glass shading rather than the very small and very ineffective light shelfs they use.

<comment><USER5> It's actually quite beautiful-- his pictures are just really terrible.</comment></comment>


Interactive editing of basic distance field operation - <AUTHOR> http://stephaneginier.com/archive/editSDF/ <comment><USER2> For anyone wondering what distance fields are for, check out: [http://iquilezles.org/www/articles/raymarchingdf/raymarching...](http://iquilezles.org/www/articles/raymarchingdf/raymarchingdf.htm) The code to generate all those images comes to only 13k.

There's a simple tutorial for modelling with distance fields on the same site: [http://iquilezles.org/www/articles/distfunctions/distfunctio...](http://iquilezles.org/www/articles/distfunctions/distfunctions.htm)

If you're into this kind of thing it's worth exploring that site.

</comment><comment><USER3> Did anything change that made this possible that it wasn't possible before? Was it just that we have faster computers now? Or something else?

<comment><USER4> Signed distance fields have been used in VFX since the mid-1990s. One of the first paper formalizing its editing techniques was by Ken Museth in 2002:

[http://diyhpl.us/~bryan/papers2/frey/applications/Museth%20K...](http://diyhpl.us/~bryan/papers2/frey/applications/Museth%20K.,%20Level%20set%20surface%20editing%20operators.pdf)

My contribution to the field (in collaboration with Ken, the author of the above) is making these scalar volumetric representations more scalable via using a recursive hierarchical sparse representation:

[https://www.cs.ubc.ca/nest/imager/tr/2006/Batty_HRLE/](https://www.cs.ubc.ca/nest/imager/tr/2006/Batty_HRLE/)

Ken Museth is now the head of R&D at Dreamworks Animation and picked up a Sci Tech Oscar two years for his level set work:

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

</comment></comment><comment><USER5> Pretty nice. Is there any way to see/edit the tree of previously "applied" primitives?

<comment><USER5> I really like the SDF visualization in this tutorial: [https://youtu.be/s8nFqwOho-s?t=12m](https://youtu.be/s8nFqwOho-s?t=12m)

</comment></comment><comment><USER6> Very nice ! I think it would be great to have the max iterations as an option as well ;)</comment>


Scratchapixel: Computer Graphics Programming from Scratch - <AUTHOR> http://scratchapixel.com/ <comment><USER2> What I don't get is why nearly all resources on 3D graphics assume the reader is familiar with matrices and linear algebra. For those who don't speak that language, what you're doing is plotting numbers into a magic box, doing a magic multiply, and hey presto, we got 3D! Magic.

Meanwhile a teenager could easily get an intuitive grasp of 3D graphics if you just explained how translation is nothing besides addition, and that to rotate, you just use good old trig functions to generate rotated basis vectors along which to plot your vertices (really easy to show with images and animations too). And that magic perspective, to make things get smaller as they get further from the camera, is just one divide by the depth away... yes, all very basic arithmetic. And no need for magic such as homogeneous coordinates. They're just a convenience for when you do things a certain way.

You don't need to go to college or even high school for 3D rasterization. But most if not all texts pretty much want to assume such a background?

Actually, I'm quite tempted to try write such a tutorial for the 12-year-old me. Too bad I can't travel back in time to see if I'd actually understand it (but I have a strong feeling I could come up with something good enough). Yeah, the lack of approachable material was very frustrating for me back then. In the end I wrote a very primitive renderer (with plenty of trigonometry per vertex) which was way too slow and complicated to be useful. Because I didn't realize how simple the problem actually is.

<comment><USER3> What you are wanting is this book: "Tricks of the 3D Game Programming Gurus" by Andre LaMothe.

The book teaches you how to write a 3D software rasterizer from first principles. The first part of the book is nothing but a well written linear algebra primer. The book then assumes you have nothing but a C++ compiler and a pointer to the frame buffer like you might get using SDL.

Unfortunately the book appears to be out of print, and the APIs used are a bit out of date at this point (Win32 and old DirectX used to set up a window w/ a frame buffer ptr).

All the same, I would still highly recommend it to anyone who wants to understand the foundations of 3D math and fixed function rendering pipelines.

<comment><USER4> [http://portal.aauj.edu/portal_resources/downloads/programmin...](http://portal.aauj.edu/portal_resources/downloads/programming/windows_game_programming_guru.pdf)

<comment><USER5> Seems to be the same author, but an earlier book?

<comment><USER3> This is a PDF of the 1st edition of another book by the same author. There is a 2nd edition, which is an excellent but outdated text covering 2D game programming.

</comment></comment></comment></comment></comment><comment><USER6> This is a great resource! For those interested in a very quick and direct intro to writing code for ray tracing, something I think supplements Scratchapixel nicely, you might want to also check out "Ray Tracing in One Weekend". [http://in1weekend.blogspot.com/2016/01/ray-tracing-in-one- we...](http://in1weekend.blogspot.com/2016/01/ray-tracing-in-one- weekend.html). It's a $3 ebook on Amazon, but the blog post has lots of free resources including the complete code for the small ray tracer developed in the book. Written Peter Shirley, by a graphics prof. friend of mine, well known in graphics / ray tracing / global illumination circles.

<comment><USER7> I didn't know Peter Shirley wrote more books! "Realistic Ray Tracing" was definitely a good introductory book back in the day.

</comment></comment><comment><USER8> These are the other graphics related tutorials I have found.

Ray Tracing in a Weekend Series. Most the way through the first book and I plan on continuing it. [1][2][3]

Tiny Renderer - How OpenGL Works. A software renderer in 500 lines of code. Wiki has a full tutorial. [4]

The Book of Shaders. A step by step introduction into fragment shaders. [5]

[1] [https://www.amazon.com/_/dp/B01B5AODD8](https://www.amazon.com/_/dp/B01B5AODD8)

[2] [https://www.amazon.com/_/dp/B01CO7PQ8C](https://www.amazon.com/_/dp/B01CO7PQ8C)

[3] [https://www.amazon.com/_/dp/B01DN58P8C](https://www.amazon.com/_/dp/B01DN58P8C)

[4] [https://github.com/ssloy/tinyrenderer/wiki](https://github.com/ssloy/tinyrenderer/wiki)

[5] [https://thebookofshaders.com/](https://thebookofshaders.com/)

</comment><comment><USER9> Maybe I missed it, but I didn't see any discussion of the Bresenham family of algorithms. I realize this is always done for you nowadays, but if you're really teaching pixels from scratch, it seems like drawing lines and circles from raw pixels needs to be covered.

<comment><USER10> Bresenham algorithms replaced expensive (at the time) floating point computation with fast (at the time) flow control. Nowadays it's exactly opposite: float is cheap and control is expensive so they only have historical value.

<comment><USER11> Actually, what's really replaced Bresenham is fixed-point. Dead-simple and non-branchy code with less than a dozen instructions in the main loop. Floating-point is still not exactly as fast as integer arithmetic:

[https://hbfs.wordpress.com/2009/07/28/faster-than- bresenhams...](https://hbfs.wordpress.com/2009/07/28/faster-than-bresenhams- algorithm/)

<comment><USER10> Fixed point is a good approach for line drawing but doing a sqrt for circles with integer arithmetics does not work really that well even if you don't know how to convert floats to ints fast (like author of the article you linked :)).

<comment><USER2> This one shows the branchy and branchless variations of bresenham being nearly equal in speed, within 5% on the older 32 bit CPU, with the branchy old school way being 1% faster on a more recent 64 bit CPU.

 _Both are significantly faster than the naive floating point version._

That is in line with my experience that floating point can still be quite slow on the CPU; the advantage from using fixed point isn't necessarily in avoiding branches (though it usually helps), but in avoiding floating point computation and conversion between floats & ints. Which is something something you have to deal with as soon as you're addressing memory or trying to pack data e.g. in video coding.

<comment><USER10> Did you forget to add a link to your post or something? I repeat this for the final time: floating point can be quite slow _but_ flow control is _much_ slower. Also, fixed point square root is _very slow_ compared to the FP one.

If you have a "brancheless bresenham" then go for it, I've never heard of such a thing so I'd be curious to see that link. But from the description it sounds like a contradiction to the Bresenham's idea.

<comment><USER2> See userbinator's link for a little performance comparison of the naive floating point code vs. bresenham vs. fixed point.

<comment><USER10> There are many problems with that link. First of all - there is no "branchless bresenham" in it. Second - the author, while noticing that float to int conversion in his compiler is slow, decided not to do anything about it instead of doing a simple google search to find how to do it fast enough. Third - he is using 8087 FP instructions, which had been deprecated since late 90s. Fourth - he is essentially measuring function call (look what's happening in his inner loop). And fifth - he is not measuring other Bresenham's algorithms. I'd love to see how he does ellipses with fixed point.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> I was surprised this starts at 3D graphics, and completely skips important 2D techniques, such as drawing/shading lines and polygons (which are also useful for doing 3D stuff).

</comment><comment><USER13> I give them a big kudos for adding lots of illustrations, it's vital to have good visual representation for math concepts.

> Evaluating the curve's equation for values of tt going from 0 to 1, is sort > of the same as walking along the curve. It is important to understand that > tt is a scalar but that the result of the equation for any tt contained in > the range [0:1] is a position in 3D space (for 3D curves, and obviously a 2D > point for 2D curves). In other words, if we need to visualise a parametric > curve, all we have to do is to evaluate the curve's equation for increasing > values of tt at some regular positions (it doesn't have to be though), and > connecting the resulting positions in space to create a polygonal path (as > illustrated in figure 5).

Unfortunately this is the language that you should avoid if you want to explain these concepts for beginners. Too technical, too rigid, too dry. I sort of understand what it says, but it could be done in much simpler way. I'd put it this way:

"We have a function that describes the bezier curve. If you call that function with the P1-4 parameters you will receive X,Y (or Z if you do 3D) coordinates that you can easily plot and connect with straight lines. You also need to specify how many segments you want to receive, this will be resolution of the curve."

Or something like this. Better explained ( betterexplained.com/calculus/ ) does a good job at this and I recently recently rediscovered Kirupa, I love his tutorials: [https://www.kirupa.com/html5/animating_with_easing_functions...](https://www.kirupa.com/html5/animating_with_easing_functions_in_javascript.htm)

</comment><comment><USER14> Wow this is an awesome online book. Goes into a lot of details, and uses words to convey the important things + supports it with code.

Another good tutorial, more specific to OpenGL, is this one: [http://www.songho.ca/opengl/index.html](http://www.songho.ca/opengl/index.html) I liked this one because each lesson has a binary you can download and run on your computer (only tested on Mac).

<comment><USER15> I wouldn't recommend that one. It teaches the old deprecated fixed function OpenGL.

</comment></comment><comment><USER6> Anyone know who's behind the site? I looked around, but all I found was a FAQ on the older version of the site that asks the question and doesn't answer, aside from "VFX professionals".</comment>


George Gilder: Bitcoin is the Libertarian Solution to the Money Enigma [video] - <AUTHOR> https://www.youtube.com/watch?v=V9hb0EKAcro&list=UU0uVZd8N7FfIZnPu0y7o95A

<comment><USER2> Url changed from [http://cdixon.org/2014/08/13/bitcoin-is-the-currency-the- int...](http://cdixon.org/2014/08/13/bitcoin-is-the-currency-the-internet- deserves-and-needs/), which points to this.</comment>


McCLIM: A GUI Toolkit for Common Lisp - <AUTHOR> https://common-lisp.net/project/mcclim/ <comment><USER2> Blast from the past! I used to work on McCLIM and Climacs as an impressionable youth almost ten years ago. I think the battle for coming up with new ways of defining GUIs is lost (and the web is eating everything anyway), but CLIM was definitely an interesting idea. While it lost a bit in the ability of individual applications to customise their behaviour, it won a lot in the interoperability that was transparently provided by the presentation system. Using "presentations", any on-screen object could be associated with a Lisp object. An application would usually "present" various objects using "presentation types" (image, graph, filename, etc), and other applications could then "accept" input of a given presentation type. If some object of an acceptable type was somewhere on the screen, the user could just click it. Text-based input entry was usually also permitted, assuming the presentation type in question had a textual representation.

I mostly worked on Drei, which was the input editor. It finds use in Climacs (which is probably not worth using if you have Emacs), and the McCLIM Listener, which _is_ really cool. It shows the potential of adding bits of graphics support to a classical REPL, and being able to work interactively with opaque objects.

Using CLIM is a bit like operating an artifact that somehow made its way from an alternative universe.

<comment><USER3> I've long been very unimpressed by common GUI development models. And also by resulting GUIs themselves - typically not very flexible. I've made a few attempts to find better approaches. But the fundamental problem is that in the end one always ends up with a separate state machine for GUI elements - so the GUI has to be synchronized with the state of the main thread. This is hard to get right, and unflexible in the end.

Two days ago I came across the "Immediate Mode GUI" approach. It has some following for example in the games or realtime graphics sector. I think it's nice and very flexible, but could imagine it falls flat for complex interaction models where you just _need_ considerable state, and it's better to use conventional widgets which have much of the logic encapsulated:

        https://www.youtube.com/watch?v=Z1qyvQsjK5Y
        https://github.com/ocornut/imgui

<comment><USER4> Maybe the common approaches and models are what's wrong. Too me, if EMACS could render HTML the way a browser could it could cover almost every desktop user interface use case.

There have been other systems developed which have similar approaches to simplifying desktop user interfaces; Enso comes immediately to mind. But I'm not aware of any systems that's completely replaced the notion of sandboxed applications running in their own windows and employing their own menu systems and widget layouts.

With web applications things have become many times worse. I absolutely hate all the different UI paradigms I must deal with on a daily bases.

There's empirical evidence to support the fact that I'm not in the minority either. I don't have the reference off hand but I was reading how a very large percentage of the Chinese population uses WeChat for many common, daily tasks other than chat. My claim: this is because consciously or not they don't like dealing with multiple, varying user interface paradigms.

<comment><USER5> _" Too me, if EMACS could render HTML the way a browser could it could cover almost every desktop user interface use case."_

I mostly browse the web using emacs-w3m in a terminal. It works great with the exception of javascript, which it can't handle. For that, I reluctantly switch to a traditional browser.

emacs-w3m is definitely not up to handling "every desktop user interface use case", but it's very nice for browsing the web in "plain text mode", as it were, viewing the occasional image (or more, if you're using gui emacs), and having full integration with emacs.

<comment><USER4> Yeah, I'm aware of w3m but it would be nice to be able to just render HTML payloads in an Emacs buffer. About a year ago I saw a demo on Youtube of an embedded Webkit in Emacs but I'm not sure what the progress is there.

What I envision is something very close to Gmail's interface. But instead of just email the interface presents a list of items. Each item is of a particular type and each type has an associated renderer. A command box facilitates command entry and the result of each command is a list of these items. When an item is selected a view of the item is rendered. Items can also have tags associated with them such that we can filter item sets by tags. A resulting set of items can be piped to an ensuing command to produce another set of items.

Item renderers don't need to be read only either. For example I could issue a file search command that returned a set of files. By selecting one, if an editor renderer existed I could edit the result in place and issue a save command on the item.

I could take the paradigm even further. I could issue something like a project command that returned a set of projects where a project was really just a tag for an item which had metadata pointing to a directory path. After selecting one of these project items I might be presented with a rendered view of the directory's contents. From there I might be able to execute a build command on this item and the command would use the metadata associated with the item to build the project. The output would be a list of one item with the build results.

I've been thinking about this for a long time and the only apps I can think of that don't fit with this paradigm are apps that actually require a mouse or pen pad for input like photo shop or auto cad.

There are varying technologies which nibble around the edges of such a system but nothing that really implements it fully. Emacs comes close, the command line in a terminal comes close, Gmail exhibits aspects, Enso exhibited aspects but nothing exists which puts all the pieces together.

</comment></comment></comment></comment></comment><comment><USER6> Cool that we got into the Hacker News. If someone is interested in getting involved in development, I want to hint that we have some bounties set here: [https://www.bountysource.com/teams/mcclim/bounties](https://www.bountysource.com/teams/mcclim/bounties)

We are moving steadily forward, if you have any questions I'll try to answer - I'm one of the current maintainers.

<comment><USER7> State of non-X11 frontends?

<comment><USER6> WinAPI frontend pending (alpha quality) - [https://github.com/ailisp/mcclim- graphic-forms](https://github.com/ailisp/mcclim-graphic-forms) (bounty $500)

Framebuffer backend working (although it uses X11, porting it to something else should be considerably easier)

OSX backend beagle is broken (bounty $400)

I suppose that's all we have atm (plus CLX backend of course, which is X11)

</comment></comment></comment><comment><USER8> I am really happy to see McCLIM moving forwards, great hacking!

I recently started a project called Studio that is a suite of interactive development tools (profilers, etc.) The two frameworks that I shortlisted were McCLIM and The Glamorous Toolkit. Everything else seemed too low-level to me. (I ended up going with the latter because it was more actively developed.)

Studio: [https://hydra.snabb.co/job/lukego/studio-manual/studio- manua...](https://hydra.snabb.co/job/lukego/studio-manual/studio-manual- html/latest/download-by-type/file/Manual#view-hot-traces)

The Glamorous Toolkit: [http://gtoolkit.org/](http://gtoolkit.org/)

<comment><USER9> Funny, after the thread about J. Rees T, I dug the web and ended up there [https://web.archive.org/web/20061013002258/http://fresh.home...](https://web.archive.org/web/20061013002258/http://fresh.homeunix.net:80/~luke/misc/haskell/NineNines.hs)

small world

ps: I just peeked at the regexp function, did someone told you or did you come up with it on your own ? it's so damn short

<comment><USER8> Small world indeed :) that's really old code, I don't remember much about it :)

<comment><USER8> Regex code was probably based on the standard Erlang regex module that Robert Virding wrote. Simplified by skipping the regex syntax and writing the AST directly (like in scsh.)

<comment><USER9> Ha, great, another name to google :p

ps: always skip the parsing.

<comment><USER10> I had some fun Haskelling Thompson's algorithm too: [https://github.com/darius/sketchbook/blob/master/regex/nfave...](https://github.com/darius/sketchbook/blob/master/regex/nfavector2.hs) \-- though I think Haskell's at a disadvantage for this one.

</comment></comment></comment></comment></comment></comment><comment><USER11> Be sure to click "Get excited" link to take a look at screenshots.

</comment><comment><USER12> Recently I'm seeing many Lisp contents in HN and always seeing tosh's name. Thanks for the posts tosh!

</comment><comment><USER13> The attitude in this screenshot may explain why Lisp environments don't take off:

[https://common- lisp.net/project/mcclim/static/media/screensh...](https://common- lisp.net/project/mcclim/static/media/screenshots/k1vOauV.png)

<comment><USER14> What was it?

<comment><USER2> It was this: [https://web.archive.org/web/20170820092504im_/https://common...](https://web.archive.org/web/20170820092504im_/https://common- lisp.net/project/mcclim/static/media/screenshots/k1vOauV.png)

Not really offensive unless you identify as Smalltalk (called a "toy"), or C++ (called a "cancerous abstraction"), but kind of shrill and not a good way to present the project.

<comment><USER15> I just started learning Common Lisp a few days ago, actually, and I agree that this isn't a good way to present this project. I've never used Emacs (I'm been using vi for 13 years now), and regarding Lisp machines, I'm very curious about them but in 2017 I have the slightest idea where I could try one out; unlike Smalltalk where there are open-source Smalltalk VMs such as Squeak, there are no open-source Lisp OSes; plus, Lisp machines themselves are expensive collectors items. (I wish there were some type of computer lab available where one could try out old machines that had a tremendous impact on computing history such as the Xerox Alto and Symbolics Lisp machines running Genera, but I digress.) It would be nice if the IP issues regarding Symbolics Genera were resolved and if the IP owners open-sourced the OS; there are enough interesting and unique ideas in Genera for it to still have an impact on the computing landscape despite its age.

<comment><USER5> It would be nice if there was a docker image or a VM new developers could download, and which had a batteries-included Lisp/Scheme development environment with emacs/vim prettied up and having all the bells and whistles, so they could just start hacking away instead of spending days or weeks learning, setting up, and tweaking their editors and downloading and installing tons of libraries and plugins.

<comment><USER7> [https://shinmera.github.io/portacle/](https://shinmera.github.io/portacle/) <\-- it needs a bit more testing so the scary warning message at the top of the page will go away, but it's impressive already IMO.

</comment></comment></comment></comment></comment></comment><comment><USER16> Why not react-like interface like reagent-project.github.io</comment>


7 counterintuitive things we avoided doing to grow 10X in a year - <AUTHOR> http://adespresso.com/academy/blog/7-counterintuitive-things-we-avoided-doing-to-grow-10x-in-a-year/

<comment><USER2> This is a leadership primer. Fantastic concentrate and proof of high "Emotional Intelligence". Armando has a clear and passionate vision about what he is going after. This vision enables him to focus on his strengths (understanding of the business, factual decision making), and to channel his emotions to filter the "noise" very effectively.</comment>


Fake 'Unicorns' Are Running Roughshod Over the Venture Capital Industry - <AUTHOR> http://nymag.com/intelligencer/2018/11/fake-unicorns-are-running-over-the-venture-capital-industry.html <comment><USER2> The interesting part to me was:

"investigations indicated that over 90 percent of mutual funds used inflated post-money valuations. For instance, funds holding different classes of stock in the same company, which clearly should have different prices, would show the same figure."

Using VC round "valuation" for your pricing? Wow.</comment>


Senators propose near-total ban on worker noncompete agreements - <AUTHOR> https://arstechnica.com/tech-policy/2019/10/senators-propose-near-total-ban-on-worker-noncompete-agreements/ <comment><USER2> Non-competes in America are _insane_. The article points out the even fast food restaurants are forcing their fry cooks to sign non-compete contracts, preventing them from flipping burgers at a different chain.

This is basically slavery. People that take these kinds of jobs tend to be vulnerable, tend to lack other options, and these non-competes remove even those few alternatives.

But they're morally wrong at every economic level. If a company wants to control what you do with your time, they should pay you for it. If you aren't actively employed by them, they should have no say in who you _are_ employed by.

Protecting trade secrets is fine, but you don't get to tell an engineer that she can't write software for Amazon just because she also wrote software for Google.

<comment><USER3> The only immoral part is that the companies are using them to scare people that don't know any better.

Because there is a 0% chance you could enforce a fry cook non-compete. And even trying would take so much more resources than could conceivably be recouped by enforcing it.

<comment><USER4> We're talking about people who wouldn't have enough money to fight this in court. All it would take is one attempt to enforce it with the right judge and it'd seem like a legitimate clause.

</comment></comment></comment><comment><USER5> It's in all professions. In school we studied a case in which a man hired every lawyer in his small town for his divorce. Then he quit them all except one. By ABA procedures, lawyers can't represent a party if they have work for the other party on the same case. His wife had to drive long distances to work with a lawyer from another town.

Oh, and there is the case of the cobbler who made high heels for a living. His agreement prevented him from making high heels for anyone. But that was all he knew. The court ruled against the contractual agreement which effectively made it impossible for him to find work.

</comment><comment><USER6> The logic here is interesting - California doesn't allow noncompetes; Silicon Valley does well, so maybe noncompetes should be outlawed.

In another thread, (about China, I think) I was reading one of the usual earnest defenses of intellectual property. But aren't patents functionally just a form of noncompete? Sure, sure, people always say they are necessary to ensure sufficient investment. But that's the same reason given for worker noncompete agreements.

I can't help thinking maybe before long we will decide they make no more sense than the medieval guild system.

</comment><comment><USER7> Lets introduce noncompete for companies. If a person who worked at company A is hired by company B then company A is forbidden to compete with company B for 24 months.

</comment><comment><USER8> Let's say I am working for a company in a state outside of California, with a non-compete. Can I take a job with a competitor if I move to California? Can the non-compete be enforced? What if I move to California to live, but commute back to the original state to work for the competitor? (Assume I'd pass the teddy bear test for California residency) What if I lived in the original state and commuted to California for the new job?

<comment><USER9> It can't be enforced if you move to CA, among other reasons because CA law says you can't use a choice of law clause to get around the prohibition against restraints on trade like non-competes.

</comment></comment><comment><USER10> This seems fine to me. These are rarely enforced but when they are, it ends up being exceedingly expensive and causes significant heart ache.

</comment><comment><USER11> Interesting that CA/SV is used as an example for how great things go when you don't have noncompetes. Have they forgotten the massive anti-poaching agreement that led to a $1.5 billion settlement?

Outlawing non-competes may be good, but big companies will still find a way to keep people locked in.</comment>


Ask HN: Why the black header line? (Answer: Andy Grove) - <AUTHOR> <comment><USER2> The black bar is sometimes added if important persons have died, in this case Andy Grove: [https://news.ycombinator.com/item?id=11333402](https://news.ycombinator.com/item?id=11333402)

bar-related discussion: [https://news.ycombinator.com/item?id=11335903](https://news.ycombinator.com/item?id=11335903)

<comment><AUTHOR> Might be nice to make that bar linked to the entry. Just an idea.</comment></comment>


Ask HN: Why is the top node of a tree structure called root node instead of tip? - <AUTHOR> <comment><USER2> Intuitively I think it is because "root" means "origin" (e.g. tell me about your roots i.e. your family, or the root of all evil etc.), and the top node is where you start when navigating the tree (it would be the memory reference you have first because it is stored in a variable, and you need to traverse to get to other nodes).

Using a physical tree analogy I'd call it a trunk rather than a root (and ignore that a real tree has roots entirely because they are a tree in their own right!)

<comment><AUTHOR> > Using a physical tree analogy I'd call it a trunk rather than a root

I will start calling it "tip" instead and see how people react!

</comment></comment><comment><USER3> It's because the tree is upside-down, growing from the top (root) to the branches and leaves (the tips) below.</comment>


What does your favorite text editor say about you? - <AUTHOR> http://www.terminally-incoherent.com/blog/2007/08/14/what-does-your-favorite-text-editor-say-about-you/

<comment><USER2> In my case, I piss off zealots of all stripes by using both vi and emacs: vi when I just need to do a quick edit, and emacs when I need to get real hacking done. On rare occasions, namely when I'm logged in to another system where I don't have my (voluminous) emacs customizations and vi isn't vim, I'll use ed.

</comment><comment><USER3> It doesn't exist yet.</comment>


New mathematical method reveals structure in neural activity in the brain - <AUTHOR> http://science.psu.edu/news-and-events/2015-news/ItskovCurto10-2015 <comment><USER2> Connectomics has been using graph theory for a while, but this is cool. Seems like more algebraic topology methods will percolate in (hah!) over time.

</comment><comment><USER3> Anyone have a link to actual paper? Without it there's nothing to be said or thought about this.

<comment><USER4> [http://arxiv.org/abs/1502.06172](http://arxiv.org/abs/1502.06172)

<comment><USER3> Thanks.

</comment></comment></comment><comment><USER5> This method is computationally very intensive. Betti numbers are hard to estimate from data, statistically speaking.

</comment><comment><USER6> Url changed from [http://phys.org/news/2015-10-mathematical-method-reveals- neu...](http://phys.org/news/2015-10-mathematical-method-reveals-neural- brain.html), which points to this.

<comment><USER7> Hey, have you noticed a pattern with phys.org links:

[https://hn.algolia.com/?query=dang%20phys.org&sort=byPopular...](https://hn.algolia.com/?query=dang%20phys.org&sort=byPopularity&prefix=false&page=0&dateRange=all&type=comment)

I wonder when it's time for an automated solution, or some submission UI to say, "Please don't submit this phys.org link, find the source it rips off and submit that."

<comment><USER6> Indeed we have, and it seems that you noticed us noticing it :)

This could be automated, but there are lower-hanging automation fruit we'll get to first.

Since most of the articles phys.org publishes are copies of university press releases, presumably they're not stealing, but the fact that they never link to the original, only the university's home page, seems questionable. More importantly, the reading experience is significantly worse and it's nicer to go to the original source in most cases.</comment></comment></comment>


Spread of SARS-CoV-2 in the Icelandic Population - <AUTHOR> https://www.nejm.org/doi/10.1056/NEJMoa2006100?cookieSet=1 <comment><USER2> So my read of this is it lowers the probability that we have widespread undetected infection and so are not closer to "herd immunity" than we think. (unless Iceland is an outlier)</comment>


Was Flight 370 hijacked for 9/11-type attack in India? - <AUTHOR> http://timesofindia.indiatimes.com/world/rest-of-world/Was-Flight-370-hijacked-for-9/11-type-attack-in-India/articleshow/32106334.cms

<comment><AUTHOR> [https://twitter.com/strobetalbott/status/444890319323406337](https://twitter.com/strobetalbott/status/444890319323406337)

[https://twitter.com/strobetalbott/status/445076167746674689](https://twitter.com/strobetalbott/status/445076167746674689)</comment>


The invention of Essex: how a county became a caricature - <AUTHOR> https://www.theguardian.com/news/2019/jun/27/the-invention-of-essex-how-a-county-became-a-caricature <comment><AUTHOR> The weirdest thing I've seen in Essex is an "authentic" pub made from limestone, it looks oldy-worldy but Essex doesn't have Limestone, old buildings are for the most part weather board.

It was so strange looking at something made to look old, that was completely fake.</comment>


A brief guide to everything annoying about Apple - <AUTHOR> https://www.theguardian.com/technology/2016/apr/27/a-brief-guide-to-everything-thats-annoying-about-apple <comment><USER2> The ironic smug satisfaction of their existing fanboys is enough. I _love_ it when someone complains that their battery is pretty much perma-dead, and when I say they can buy an OEM replacement on Amazon for $15 they say, "oh... its an Apple." sounds more like a lemon to me, mate.

Not to mention you can't talk on it and do... well, anything else at the same time. Worthless.</comment>


Ask HN: Where is "Big Data" on the Hype cycle? - <AUTHOR>

See the Hype cycle: http://en.wikipedia.org/wiki/Hype_cycle <comment><USER2> I don't know--you tell me.

[https://twitter.com/BigDataBorat](https://twitter.com/BigDataBorat)

<comment><AUTHOR> My rule of thumbs is that we are at the peak when big networks invite "Experts" to talk about"the new revolution".. Unfortunately i don't turn the TV on anymore</comment></comment>


Show HN: Lazyjot – Webapp for Songwriting - <AUTHOR> https://lazyjot.com <comment><AUTHOR> Hi HN!

I got tired of using Google Docs for songwriting as it didn't have some things I wanted to have, such as annotating directly in the lyrics without a super awkward notation. In addition to that, I thought it'd be nice to get a clearer overview of rhymes and syllables. Arguably it might be useful for writing poetry as well, but I think to a way less extent.

There's no native app for the phones yet, but might be something for the future. But there is a dark mode!

Let me know what you think or if you have any questions! :-)</comment>


If you want to hire an experienced data scientist, be prepared to pay - <AUTHOR> https://www.linkedin.com/pulse/you-want-hire-experienced-data-scientist-prepared-pay-richard-downes?trk=v-feed&lipi=urn%3Ali%3Apage%3Ad_flagship3_feed%3Byx4LCWwV5ZSxDRUe6NZTEQ%3D%3D <comment><USER2> I feel like this could be universal.

If you want to hire an experienced, production and value adding _______ be prepared to pay.

It's like the phrase "You don't pay a plumber to bang on your pipes, you pay them to know where to bang." (yes, that's from Suits)

Anytime you choose cost over experience you end up paying more than you would in the first place by the end.

Obviously there's exceptions to that, but if you're going to be cheap on a component or person that you need you will definitely regret it later.

<comment><USER3> The plumber quote is likely ultimately based on this incident between Charles Steinmetz and Henry Ford:

[http://www.smithsonianmag.com/history/charles-proteus- steinm...](http://www.smithsonianmag.com/history/charles-proteus-steinmetz- the-wizard-of-schenectady-51912022/)

One of my go-to stories when telling freelancers not to charge hourly :)

<comment><USER4> Thanks for the link. I thoroughly enjoyed that. I never thought about the character behind the name. heartwarming

</comment></comment></comment><comment><USER5> I have met many people who call themselves a data scientists. it is very easy to call yourself a data scientist, and justify the label.

if the vocabulary of your community doesn't support your needs, then you need to modify your vocabulary. Swear words like 'data scientist', invite the idea of casting a wide net with a large set of poorly defined skills to arbitrarily select from.

I appreciate the communities' use of the term 'data engineer' to quarantine out some of these skills. For those writing a job description, or vetting candidates, these words really matter. when you muddy the soup, by expanding definitions, time gets wasted.

<comment><USER6> Is there a commonly accepted standard for qualifications of a data scientist, are they expected to be software engineers with PhDs in something statistical/data-oriented? I've heard mixed things and am interested in getting clarity on this - sometimes they have CS backgrounds, sometimes they have non-CS backgrounds, some are competent programmers, others can't write a line of code, etc.

<comment><USER7> Nope is the short answer. But in general you're expected to have a grasp of the fundamentals of statistics, some software engineering, Python and/or R, knowledge of the various algorithmic approaches, and a host of traits which really make a data scientist: curiosity, persistence, determination, flexibility, adaptability, detail oriented, conscientious, really like a challenge, resourceful, good interpersonal skills, ability to convey the complex in simple terms... In many ways I think it's almost more about the traits than the training.

But yeah, where I've worked that's generally what we look for in candidates.

What is astonishing to me is how there seems to be 1) a dearth of candidates, period, and 2) candidates we can dig up miss scheduled calls, show up late for interviews, interview very poorly, turn in poor quality take home exercises (an exercise which essentially just covers the basics), have really crappy resumes (typos, horrible layout, inconsistencies with LinkedIn profile, etc...)--and these are folks with experience as statisticians or data scientists. Amazing.

We don't ask anything deep or complex either, yet we've had a really hard time finding people.

<comment><USER8> The chief data scientist at my last job said a Data Scientist knows more programming than your average statistician and more statistics than your average programmer. There's this venn diagram he used to show with the intersection of skills for the different disciplines involved - some math, some engineering, some communications.

I think there's also an intersection with devops skills, maybe less important, but your hardcore statisticians usually put zero thought into operational considerations. Really the last bastion of "works on my machine" thinkers in the computing world. I just finished the Coursera "Reproducible Research" course and I was really struck how many of those principles parallel good software engineering practices - use source control, document through code, separate your environment from your code, automate as much as you possibly can, etc. I've been a software engineer for 20+ years but I want to get into data science partly because I've always been a data head, just without the theoretical background to do really interesting work, but also because I think I can bring some of the software engineering skills to bear.

Also, with grading peer's work on Coursera, I really realize that a lot of these candidates need help with their English and presentation skills. Many of the students put no work at all into the presentation, I imagine that's going to serve them poorly in the working world.

<comment><USER9> The way I've heard it from others in this forum, is that a DS is a combination of three jobs. They are analysts, in that they can work with data and squeeze insights out of it and they know enough about the business to know that the numbers mean and what differences matter. They are software developers, in that they can build actual software solutions to access and manipulate data, rather than relying purely on shake-n-bake existing tools. This helps them deal with very large data sets that are beyond conventional analyst tools such as spreadsheets. And finally they are experts in stats/ai/math who can build and evaluate sophisticated mathematical models.

It seems to me that's an awful lot to fit between one pair of ears.

</comment></comment></comment></comment></comment><comment><USER10> I recently read this quote somewhere: "If you think a pro is expensive, wait until you have to fix the work of an amateur"

</comment><comment><USER11> What are the salaries for "data scientists"?

<comment><USER5> 7.50$ /hr

</comment></comment><comment><USER12> If you want to be tagged as an experienced data scientist be prepared to work for free for several years.

Or be payed in "credits", that is the same thing.

<comment><USER12> s/payed/paid/</comment></comment>