hacker news with inline top comments    .. more ..    23 Dec 2014 News
home   ask   best   4 years ago   
PHP 7's new hashtable implementation
150 points by xrstf  10 hours ago   42 comments top 9
skrebbel 8 minutes ago 1 reply      
This is probably not a popular opinion, but I believe that PHP's associative array is one of the best-designed data structures in programming languages.

Its main distinguishing property, as mentioned in this article, is that values can be indexed by key, but are still iterated in the order they were set. This is "do what I want" in so many cases that it's just nuts.

Sure, just as often it's just needless overhead, but as a programmer who prefers to reason about domain and not performance, I often don't care about that. I hate that many other languages, including C#, Ruby and Python, force me to choose between either an unordered map or a list of (key, value) tuples.

I wish more languages had a native data type like this. It scares me that in practice JS objects have the same property, but officially the iteration order is not specified.

(that said, PHP's choice to mix regular arrays and associative arrays into a single type strikes me as a bit odd. i've also never seen a good use case of arrays with mixed string/int keys)

adunn 5 hours ago 3 replies      
This is great news. PHP doesn't have many structured data types, so arrays (aka maps) are basically used for everything. Any improvement to them will impact the entire application.

It would be nice to have separate types for arrays and maps though. I don't understand why they were combined to begin with. Simplicity? Seems like there are more edge cases and gotchas the way things are now.

mmaunder 46 minutes ago 1 reply      
Awesome, but I still don't think it's enough. In benchmarks we did the memory usage of PHP array() was horrific. Sorry I don't have actual numbers to post, but we ended up using pack() and unpack() to store stuff that should have been in an array because it would grow to 100's of megs using PHP's array() and using a binary structure it stays under 10 megs. I just don't think a 2.5X improvement is going to come close to as efficient as it could and should be.
allendoerfer 2 hours ago 0 replies      
It is both nice and concerning, that an ubiquitous element of a ubiquitous language has that much potential for performance optimizations after 19 years of development. The optimizations were not even complicated hacks for edge cases, just a simpler implementation overall.

But then again, PHP itself being stateless between requests is quite fast already, nice to see even more performance getting squeezed out. Imagine the decrease in global energy consumption due to this change. :D

gopalv 4 hours ago 0 replies      
This is neat. Looking through it, looks like it makes regular numeric arrays faster as well via the flags.

I wonder if the ->pDataPtr vs ->pData confusion has been resolved.

I'm probably a few years behind, but a lot of my confusion working with hashes has been that pair of void* pointers.

bhouston 3 hours ago 1 reply      
How does this compare to the optimized hashtable implementations in the various JavaScript runtimes? I imagine their requirements are similar?
Bahamut 5 hours ago 6 replies      
What happened to PHP 6?
aruggirello 2 hours ago 0 replies      
It would have been nice to see performance comparisons too - though I understand the new codebase might not be optimized for performance yet.
ape4 2 hours ago 0 replies      
I assumed they used C++ std::map<>
Network Manager 1.0 Released after 10 years of development
38 points by Mister_Snuggles  6 hours ago   2 comments top
JoshTriplett 1 hour ago 1 reply      
> A faster, lighter-weight internal DHCP client based on code from systemd-networkd has been added

This is huge news. systemd-networkd's DHCP client, thanks to Tom Gundersen's work, can successfully get an address in milliseconds, rather than the many seconds required by dhclient. See https://plus.google.com/+TomGundersen/posts/eztZWbwmxM8 for some of the details.

I eagerly await wireless networking support in systemd-networkd, but in the interim, this will drastically improve network setup time on the average Linux system.

Beginners' Guide to Linkers
28 points by rocky1138  7 hours ago   1 comment top
NH_2 20 minutes ago 0 replies      
Helpful for readability:

var style = document.getElementsByTagName('body')[0].style;style.width = '800px';style.margin = '0 auto';style['font-size'] = '19px';

An Orangutan Has Some Human Rights, Argentine Court Rules
16 points by gpvos  2 hours ago   6 comments top 2
breakingcups 0 minutes ago 0 replies      
Human rights are an interesting phenomenon.

Us humans don't even have basic human rights, as evidenced by the recent extensive publications regarding the torture practices of the US (rectal feeding?). Such a contrast to this (otherwise completely unrelated) article.

pizza234 39 minutes ago 3 replies      
I find very interesting the court argument: "chimpanzees can't fulfill the social obligations expected of anyone with rights".

Philosophically, the same could be applied to a paraplegic, or in most cases to somebody with Down syndrome, so I wonder if there was more in the ruling; I find this argument very poor.

Principles of Distributed Computing
171 points by olalonde  10 hours ago   16 comments top 5
olalonde 9 hours ago 3 replies      
The whole book is available for download here: http://dcg.ethz.ch/lectures/podc_allstars/lecture/podc.pdf

Has anyone followed the course or read the book? I was actually reading "Distributed Systems - Concepts and Design (Third Edition)" and thought it felt a bit outdated and not enough focused for my taste (there are whole chapters on networking and operating systems for example). Then I found this course/book which seems a lot more in depth and modern but I haven't had time to read it yet and couldn't find any reviews.

krat0sprakhar 8 hours ago 0 replies      
Shameless plug: If you're interested in more such university courses on systems that make their lectures, assignments available checkout https://github.com/prakhar1989/awesome-courses#systems
wstrange 5 hours ago 0 replies      
I am curious why Jini gets no mention in a book on distributed computing.

Jini was not commercially successful, but some of the concepts were quite interesting: mobile code, downloadable client proxies, leasing, look-up by interface, etc.

"The end of protocols" is a short but good read:


javajosh 8 hours ago 5 replies      
I'm actually rather curious to know how HN people use resources like this. Do you set aside a few hours a week and do a self-course on the content? Do you skim it and smile and node? Do you bookmark it and never get around to reading it? Something else...?
YesThatTom2 7 hours ago 0 replies      
Shameless plug...

"The Practice of Cloud Computing" is a more balanced approach.

"Unsatisfied with books that cover either design or operations in isolation, the authors created this authoritative reference centered around a comprehensive approach." (quote from the back cover)

Ladies and gentlemen, I present exhibit A: the ToC of "Principles of Distributed Computing". All design. No operations.


With 5000 apps, Pebble is winning the smartwatch developer war, at least for now
18 points by technologizer  5 hours ago   2 comments top
Rygu 41 minutes ago 1 reply      
Well if "Pebble" is a platform and iOS is a platform, my bet is that Apple already won this.
Kalzumeus Software Year in Review 2014
337 points by JayNeely  16 hours ago   122 comments top 31
davidw 14 hours ago 1 reply      
> I work mostly on what I want to work on, take a day off whenever I feel like it, and optimize the business for quality of life rather than for any particular growth or financial targets.

There was some thread here where patio11 kind of snickered when someone called his business a "huge success"; probably because he knows a bunch of people that earn one or more magnitudes more money. But the above quote probably sums up "fantastic success" for me, and I think, a whole lot of the world.

mherrmann 1 hour ago 0 replies      
I have been working on an AR clone in Austria since mid September (https://www.terminerinnerung.org). I focus on getting enterprise customers. My website is hardly visited (so far). I got my first two customers by simply walking into their offices and asking whether they'd be interested. I asked them to pay me for 12 months in advance, so I have earned 5368 (6565 US$) since I started. I'm hoping that I will earn this again in 2016, when it comes to renew the contract for these first two clients.

My approach is more high-touch - I don't rely on people searching for "Terminerinnerung" ("Appointment reminder") and then coming to my website. I think most doctors don't do that. I go out and talk to them.

I also by default offer to develop integrations into the customer's existing appointment reminder system - because the majority (~66%) of my potential customers here already have some computer system. This means reverse engineering the customer's existing system to be able to continuously export its data. I did this successfully for one of my customers (it was a Java/MySQL application). The other customer I developed a web calendar for.

I have now completed the development for my first two customers (I hadn't completed development when I sold the service to them. I just pretended I had, to make the sale). At the beginning of next year I'll start to acquire more (enterprise) customers.

I'm happy to talk about this via email if anybody's interested. My address is [my first name]@[my last name].io (Michael Herrmann).

toumhi 12 hours ago 0 replies      
I completely understand for your neglect of Appointment Reminder. I've also had my share of projects I'd start but lose interest in it because, well, I was not consumed by the problem I was solving.

So during the years I worked sequentially (or sometimes at the same time) on a gift certificate template gallery, a travel insurance comparator, a body-mass-index calculator website, a file sharing solution for businesses targeted at the french market.

The reasoning behind all these projects was to make "passive income". And by running multiple websites I would make a nice income from them all combined.

After developing and marketing the last of these projects (file sharing one, post-mortem here: http://www.sparklewise.com/post-mortem-5-mistakes-i-made-wit... ) I realized that the most important thing is not to have a "good idea" but to work on a problem you want to solve and with people you can relate to or at least that you enjoy working with. That's why I now focus on serving SaaS businesses, because that's actually something I care about and will likely care about for years to come.

Thanks for all the transparency Patrick and for setting an example for the rest of the HN crowd. And good luck with the fatherhood :-)

porter 15 hours ago 1 reply      
Hey Patrick, thanks so much for your honesty in all of this. It's never easy talking about things that embarrass us. Not to mention in public. You'll probably get some haters, but just know that I look forward to your annual updates and they have encouraged me to quit my job and start my own software business too. This has been one of the best decisions of my life. I'm sure there are many more here who can say the same thing. So, to you good sir, thank you.
wallflower 16 hours ago 1 reply      
> Ruriko and I were blessed by the birth of our daughter, Lillian.

Congratulations patio11!

jakobegger 14 hours ago 0 replies      
Thanks for being so open with your feelings. I always find it hard to talk about my own feelings, and it's great to hear how you are struggling with and overcoming the pitfalls of self-employment.

Your open sharing of actual revenue numbers is invaluable. The tech press only loves to talk about all those billion dollar companies. But your blog posts put that into perspective, giving us a glimpse of how much money a small business can realistically make without shooting for the startup lottery.

saturdayplace 15 hours ago 0 replies      
> The only time in recent memory I used it myself was when a Redditor asked for anti-Bitcoin bingo cards, a request which I am unquestionably the best qualified person in the world to answer.)

Apropos of nothing, it seems that if you're interested in piquing the interest of someone busy, discovering the venn diagram for which they're one of a small population in the intersection might be the way to go. Or, it might just be really creepy.

Permit 5 hours ago 0 replies      
>Most of our customers are on the Professional plan, which annoys the heck out of me, but its my fault. Since I was thinking personal services, where 100 appointments a month barely sustains a sole practitioner (it implies $3k to $8k gross revenue), I thought any sizable business would be forced to pay more meaningful amounts of money. It turns out that you can run a nice boutique law office with sales in the high seven figures or an architectural consultancy with millions in revenue on less than 100 appointments a month. Believe me, I know several examples.

If you could go back in time how would you change the pricing model here?

Would you remove the professional plan altogether? How could your pricing model differentiate between the small personal services with < 100 appointments/month and the law firms with < 100 appointments/month?

chrisan 15 hours ago 3 replies      
Thank you for sharing your story

> Im taking my own advice to charge more, and re-aligning those numbers with actual customer behavior rather than the numbers I guessed four years ago.

How do people normally handle this?

1) Take it or leave it price hike

2) Give a X month grace period before new price

3) Grandfathered in and price only changes if they need to upgrade

4) ??

manto 2 hours ago 0 replies      
Patrick's writing serves as a great supplement to PG's essays: real world analysis of "slower" growth software businesses. For engineers interested in alternate models of creating a company, these annual write ups help one develop an outline for the financial, business, and engineering lifestyle required to get something off the ground. Thanks Patrick, after working at VC backed startups, these types of posts actually encouraged me to go out on my own!
mooneater 15 hours ago 1 reply      
I am a huge fan of yours patio11, you have gifted us so much useful knowledge. How do we ever repay you? =)
simonswords82 16 hours ago 1 reply      
Hey @patio11, hopefully you'll lurk a bit later...

Congrats on the kid! Balancing a newborn and any amount of business is no joke (source: I have two startups, a software company and an 18 month old).

I wanted to ask about this:

> To build out that software and get the team spun up, I had to actually sit down and document our business processes

I'd love to here a bit more about how you went about that. You've got a great approach to documenting your thoughts and I'm sure I could learn a thing or two. I'm scaling our app http://www.staffsquared.com in 2015 and working hard to share knowledge across our growing team.

Keep up the great work!

ThomPete 14 hours ago 1 reply      
You can burn or you can last, but you can't do both.

Patrick is a wonderful example of a person who takes the middle road and actually put quite a lot of effort into making sure he stays there rather than letting himself be sucked in by the grow like crazy game or the never launch anything game.

He is happy, he is not trying to be happy. That alone is something most people will never experience and measured in that he is a billionaire.

UtahDave 2 hours ago 0 replies      
My favorite quote from Patrick's post:

"The slip date shipped repeatedly."

billsossoon 10 hours ago 0 replies      
The comment about BCC being Hello World with a random number generator is amusing, but the fact that you were able to generate profit from a simple web app is really a testament to your marketing and business skill.
gknoy 15 hours ago 2 replies      

  [H]aving numbers publicly available would complicate   [taking investment money in the future].
I don't understand why having publicly available numbers would complicate getting investment in the future. Would someone be gracious enough to explain that to me as if I have no knowledge (true in this case)?

xzlzx 5 hours ago 0 replies      
"...a lot of folks have wanted me to roll the dice on a funded startup with big put-a-dent-in-the-universe ambitions. At times, I wanted to want that for myself, but for the moment I was content to keep running my business in the traditional fashion. I work mostly on what I want to work on, take a day off whenever I feel like it, and optimize the business for quality of life rather than for any particular growth or financial targets."

We share the same viewpoint. Well said.

shostack 13 hours ago 1 reply      
Re: your SEO comment:

"AR is virtually guaranteed to be a mortal lock on the query [appointment reminder] due to the combination of the exact match domain bonus and the fact that most links to it naturally cite the name of the company."

Wasn't that largely made irrelevant a while back? I'd be willing to bet the majority of your relevancy comes from the backlinks and content on their pages vs. your exact match domain. Hopefully you're not building a link profile focusing on that link text as there have been reports of people getting dinged for that.

daxelrod 9 hours ago 0 replies      
Bravo for candidly writing about your failures as well as your successes. I don't think a lot of us would have the guts to write publicly about times that we didn't measure up the way you have; but your doing so is wonderfully instructive.

Congratulations on fatherhood!

unreal37 16 hours ago 1 reply      
I bet it must be an amazing relief to be able to talk specifics of AR, after so long of having to be quiet about the details. Congrats on your success, Patrick.
JunkDNA 6 hours ago 0 replies      
This might be one of my most favorite posts of Patrick's ever. It's often so much easier to start something new than it is to sustain something old. Hanging around HN too long makes you an addict of "new". Guess what: growing and sustaining a business for the long haul is hard, even for patio11.
bbcbasic 13 hours ago 1 reply      

Have you thought of launching an affiliate program for the BCC ?

You can connect on forums like WarriorForum and find good affiliates. They will love that you have a proven product. Then give them 50-75%.

Some will advertise on their existing sites, to their lists and may even pay for advertising. You take no risk and may get a lot for sales.

Another option is Clickbank where affiliates may find you. There are alternatives like JVZoo, DigiResults etc.

You could hire someone part time to do the customer support and bugfixes.

In short you could keep BCC going nicely with very little effort on your part.

And then after a few months, you have a low maintenance business that you can sell, rather than something that will slowly die.

I know it may not seem worth your time, as you have bigger fish to fry.

However all of this could be done in a couple of days, and maybe an hour a month to maintain. You may be able to sell it for $100k or more once it is in good shape again.

applecore 16 hours ago 2 replies      
Why is Appointment Reminder on a .org top-level domain?
mattste 13 hours ago 0 replies      
As a young software developer interested in what happens on the business side of things, this was a fantastic read. Thanks Patrick.
sogen 11 hours ago 1 reply      
Is there a way to reach patio11? I emailed him while taking his course but never got a response.
fdsary 15 hours ago 1 reply      
Congrats on the kid & move to
krschultz 14 hours ago 1 reply      
Glad to hear Patrick is using Bench, those guys are awesome.
staunch 12 hours ago 0 replies      
Congrats on the baby!
curiously 12 hours ago 1 reply      
Is it better to have a low churn rate per month with lower MRR or a higher churn rate with higher MRR ?

Can you counter churn rate by acquiring new customers?

sadpanda5 15 hours ago 9 replies      
This may be a unpopular opinion, but this guy needs to cofound a company with someone else. He is one of the smartest dudes I know for optimization, but seems to have some of the most tame/boring ideas for 'startups' (if you can call them that). Bingo card creator? Appointment reminder? He needs a cofounder who compliments his skills. Mainly, good ideas and good sales skills.

The bottom line is you can only optimize so much via a/b testing and whatnot from marginal ideas at best.

dennisgorelik 12 hours ago 1 reply      
> Ruriko ... does not love Ogaki ... and wanted a change.

Did she consider US cities?

Tokyo is very expensive and an unusual choice to move into for family with a child.

Any US city would put you in a better touch with your business and would be less expensive than Tokyo.

Let-aliasing in Typed Racket
13 points by jarcane  6 hours ago   discuss
FizzBuzz: the test helps filter out the 99.5% of programming job candidates
29 points by waitingkuo  1 hour ago   23 comments top 10
BSousa 28 minutes ago 1 reply      
I was once presented this during an interview which wasn't going too well (I decided I didn't want to work there after seeing the working conditions of the developers: 60+ developers crammed in a small room with minuscule desks, distributed in rows where people would bump into the chairs whenever they had to get up and move) and they told me that a lot of the candidates couldn't solve it and would be an elimination test. They told me I could use any language I wanted, so for kicks I did a simple Haskell version of it (nothing complicated, just a fizzbuzz function mapped over the list). I was told on the spot that I failed and they wouldn't continue the interview.

Why the this story, just if you give anyone a choice of any language to solve fizzbuzz or other problem, be sure you are open to see code that looks strange to you.

ivanche 7 minutes ago 0 replies      
I'm a little bit surprised of "if-else if-else if" mindset in c2.com wiki entry for this. I always thought of FizzBuzz solution without a single else, like this:

  for (int i = 1; i <= 100; ++i) {    boolean pureNumba = true;    if (i % 3 == 0) {      System.out.print("Fizz");      pureNumba = false;    }    if (i % 5 == 0) {      System.out.print("Buzz");      pureNumba = false;    }    if (pureNumba) {      System.out.print(i);    }    System.out.println();  }

onion2k 42 minutes ago 0 replies      
I love FizzBuzz. The great thing about it is that it's easy to write code that works so candidates can feel happy that they've 'passed' but flexible enough that people's solutions will differ. And that's what you want in an interview situation - working code that you can talk to the candidate about. If you question what they've done and the candidate can explain and defend their decisions then you can figure out if they'll be able to speak up and contribute to technical discussions, to communicate their ideas and comment on other people's solutions. That's the sign of a good developer (in my opinion).
eneifert 38 minutes ago 1 reply      
Just curious where you got the number 99.5%? Approximately how many of the people you interviewed couldn't complete it?
jalanb 12 minutes ago 0 replies      
What I find strange about this test is that it also weeds out 99.5% of candidates who can't seem to google for "programming interview" before turning up at one! Amazing how many (3rd year Comp Sci) students have never heard of it.
raverbashing 30 minutes ago 1 reply      
It also pisses off the 0.5% that know how to program

Best programming test I've seen was one that was done online, and automatically ran your test through unit tests.

Doing a test is fine, but do it, don't waste my time and move on accordingly to the result. Also, make me do it first, so the technical ability is off the table at an interview, don't make me 1) do it "on paper", (or like a quiz show) and in your location and 2) rate on objective measures (like passing/failing some test) and be transparent about scores (like they would be in a code review)

robinwarren 21 minutes ago 1 reply      
This test still seems to be under the radar of a lot of candidates. We'll need something else to weed out the surprisingly large amount of candidates who don't seem to be able to actually code one day though. Any ideas?
smtddr 30 minutes ago 2 replies      
This is by far my favorite interview question to give. In case the candidate may have memorized it, I might make a slight alteration. Like count backwards from 102 to 2 and don't print anything for prime numbers.
spdy 46 minutes ago 1 reply      
I have to memorize a really obfuscated version of this "test"just in case. Sadly no one can remember the brainfuck version.
How Good Was Napoleon? (2007)
75 points by diodorus  8 hours ago   31 comments top 8
alricb 6 hours ago 1 reply      
> Jonathon Riley served in Bosnia and Iraq, where he was the general officer commanding British forces.

A British officer who doesn't think highly of Napoleon? This is my surprised face.

> This is implicit in Karl von Clausewitzs celebrated but often misquoted (and still more often misunderstood) remark that war is simply a continuation of political intercourse, with the addition of other means.

Can this guy read German? Because that seems like an over-translation of the simple Der Krieg ist eine bloe Fortsetzung der Politik mit anderen Mitteln (title of section 24, chapter 1, book I of Vom Kriege).

I would also note that Napoleon failed in the end, but that he did quite well in the meanwhile. He continued the Revolutionary Wars, and so was doomed to face the forces of reaction, who would never ally with him with any kind of sincerity. It's possible that his military successes blinded him to the possibility of stability through diplomacy, but could he really have allied with the Habsburgs?

He also had to contend with an ascendant Britain, willing to exploit her insular position to its full advantage through her renewed Navy and her economic strength. But just a few years before the French Revolution, Britain had come close to losing it all; with no allies on the continent to distract France, she might have lost not just her colonies, but her dominant naval position, which was so essential in Napoleon's defeat.

hooande 7 hours ago 2 replies      
Napoleon was indeed a very good general, rightfully considered as one of the greatest of all time. This very well written and insightful article takes his legend down a peg or two, which is certainly justified. The invasion of Russia was one of history's greatest follies, The Little Corporal was cavalier with the lives of his men and his strategic brilliance was inconsistent at best. But his strengths often made up for his short comings and he was better than almost all of the comparable generals of his day.

His victory at Austerlitz stands as one of the great military achievements and best executed battles in history. Literally a textbook example of movement, timing and coordination. The common perception is that after Napoleon returned from Elba he lost much of his strategic and tactical flair, throwing his men into meat grinders. This is mostly true, but most of the opposing generals also had very high casualty rates. Napoleonic warfare was dominated by the Fog of War, they had no satellites or drones to help them plan and maneuver. Napoleon had a sixth sense for visualizing a battle that unfortunately came and went. On his good days he was better than many who have ever lived. On most days, he was simply average. That's as much as most of us could ask for, and it was enough to dominate a continent at the time.

History is filled with intelligent and technically capable generals, but only a few who had a style that set them apart. Hannibal and Robert E. Lee come easily to mind, along with others. Napoleon's genius of movement and logistics were groundbreaking, and the lessons apply to more than warfare. He was the original "Move fast and break things". He taught military history that being faster and better organized was enough to build a seemingly unstoppable snow ball effect of victories. His downfall instructs that even the best preparation cannot defeat a dangerous and unpredictable shifting landscape.

VieElm 6 hours ago 2 replies      
From a literary perspective, Tolstoy's War and Peace has volumes of text dedicated to examining Napoleon and the impact of "great men" on history. He also doesn't create a very flattering portrayal, it's a great read. Of course there's more to that book than just war. Dumas, who named a chapter "The Corsican Ogre" after Napoleon in The Count of Monte Cristo is also not very kind to his legacy. Napoleon's lasting impact beyond just the destruction and desecration of monarchies across Europe probably includes the Napoleonic Code[1] which has probably influenced laws everywhere.

Another great read is Rifleman Dodd, also known as Death to the French, the story of a single British rifleman causing havoc to french forces in Spain[2]. It gives you an interesting perspective how much the french were hated outside of France.

[1] http://en.wikipedia.org/wiki/Napoleonic_Code

[2] http://en.wikipedia.org/wiki/Death_to_the_French

nl 5 hours ago 0 replies      
Criticising Napoleon without mentioning Austerlitz[1] is.. pretty stupid. Probably only Cannae is as famous as a textbook example of brilliant command.

Even if there are some decent points made it will take a lot more than that to argue that he wasn't one of the great battlefield commanders.

[1] https://en.wikipedia.org/wiki/Battle_of_Austerlitz

Animats 4 hours ago 0 replies      
This is from a real general. You can tell. He talks about logistics before he talks about battles. Napoleon's military funded the development of the tin can. That wasn't enough to get his army to Moscow. Here's a view of that logistic disaster: http://www.indiana.edu/~psource/PDF/Archive%20Articles/Sprin...

As is usual with the conquer-the-world types, not knowing when to stop was Napoleon's downfall. Hitler made the same mistake - taking on both Britain and Russia at the same time.

gadders 1 hour ago 2 replies      
Short answer: Not as good as Wellington, clearly.
teach 7 hours ago 2 replies      
SO much passive voice. Somebody needs to run that article through Hemingway.[0]

[0] http://www.hemingwayapp.com/

ArkyBeagle 6 hours ago 1 reply      
I suppose we should estimate Napoleon's greatness by the size of the mess he left behind. Considering that a Napoleon III intervened to disaster in ... Mexico, that's quite a mess.

Napoleon was sufficient to resuscitate the Spanish Inquisition. It is a Napoleon-sized mess in itself, but "Goya's Ghosts" at least brushes onto this - complete with a demonstration of the use of the garotte.

But at least we had... Bismarck...

A Haskell monad that produces Brainfuck programs
19 points by mzehrer  3 hours ago   2 comments top 2
lmm 21 minutes ago 0 replies      
Brainfuck may be a bit of a silly use case, but we use similar approaches to e.g. manage database transaction boundaries in a safe way, while making higher-level functionality available.
lifthrasiir 1 hour ago 0 replies      
A monadic generation of the grammar is interesting. It reminds me of the following submission to ICFP 2011; it was placed the 3rd place in the main contest.


Cat Litter Boxes and DRM
229 points by DanBlake  17 hours ago   100 comments top 20
forrestthewoods 12 hours ago 8 replies      
This is a relatively interesting situation imo. And it's tragically not unique. Another example is the Keurig machines. The latest model has DRM such that you can only use officially licensed Keurig cups. Suffice to say people were displeased. A delightful video showing how to get around it has 670,000 views. https://www.youtube.com/watch?v=9e0yCq1AEeY

So, here's why I think it's interesting. The companies that sell these products likely make the bulk of their profit from the consumables. That makes it economically viable to sell the machine at break even or possibly a loss. Then the money comes from the consumables. This is a pretty attractive business model both to the manufacturer and possibly even the consumer.

The downside, of course, is that competitors can swoop in and make consumables as well. So now you're selling hardware for a loss and other people are selling consumables for razor thin margins and you're screwed.

I don't think there is an obvious answer here. Some of these markets might not be viable if the hardware has to be sold for a profit. So that kinda sucks. But the DRM also treats consumers like shit, so that really sucks.

Is perhaps the issue just that it isn't clearly stated up front? Amazon sells two flavors of Kindle readers. One with ads for less money and one without ads for more ($20). Once upon a time Apple sold DRM mp3s for 99 cents and DRM free mp3s for $1.29. Would you pay an extra $50 for a DRM free kitty litter box? Or an extra $100 (33%) on a fancy coffee maker?

Here's my take away. Some products are subsidized by consumables. DRM enables that subsidy. Without DRM that product may not be viable. DRM can be minimally negative (Steam) but can also be maximum hostile (Keurig). Finding the balance is tough and we should talk more about it.

donutz 13 hours ago 2 replies      
"Every once in a while, when the scoop misses a giant cat poop the drying cycle cooks it. It gets dried out like a little raunchy piece of beef jerky. It ends up stinking the apartment up worse than one could imagine. Its rare, happening maybe once every week or two"

Thanks for striking this off my list of "things I think might be useful." I don't need the odor of fresh-baked cat poop wafting through my house. I'll stick with the freshly-poop cat poop smell that concentrates itself fairly well to the room the litterbox is in.

pavel_lishin 13 hours ago 2 replies      
I feel like the litterbox of the future baking a shit lasagna once every two weeks is a pretty damned high failure rate. Aside from the obvious gross-out factor (I also assume you have to clean it manually after this happens?) I'd be worried that today it's the cat's poop, but tomorrow it'll cook the cat.
CapitalistCartr 14 hours ago 2 replies      
We've been hearing about computer tech coming to everything, even our coffee pots for so many years now. Who knew when it did, it'd be DRM. Keurig thought that was the way to better coffee, apparently. This has become idiotic. There appears to be someone at every corp that thinks this is a good idea and presses it. No downside, and huge potential upside. Until there is a negative, it will proliferate.
randunel 1 hour ago 0 replies      
I guess you wouldn't mind losing your warranty on a cat litter machine, but you definitely would suffer losing your warranty on a 20000 car. Although you currently don't have an alternative for that car's DRM, I'm sure someone will come up with something once these get popular enough.

The cost of leasing the battery for 36 months starts from 79/month (US$104/month) http://en.wikipedia.org/wiki/Renault_Zoe

Later editMy statements were based on the previous rent-only strategy. Meanwhile, they also introduced the option to actually purchase the battery for ~4000. As if your handing in your driving data wasn't enough, they can also disallow your charging at any time, and here is an excerpt from their TOS:

18.3 Battery DataFor management, administration, and accounting we will collect information about your use of the Battery and the Electric Vehicle. Thisis to allow us to manage battery stocks, maintain hire payments at a competitive level, monitor performance of your Battery and monitormileage and fast charge use.This data will be transmitted to us by the telematic box installed in the Vehicle. If you would like more information about this technicaldata, please write to Renault ZE Customer Services, RCI Financial Services, P.O. Box 495, Watford, Hertfordshire, WD17 1GL.If you have opted to install a Connection Pack we will also receive data about your location. If you do not wish us to receive locationdata you may disconnect the telematic box. Instructions for disconnecting the telematic box will be in the Connection Pack.

anigbrowl 12 hours ago 3 replies      
I do my cat litter manually, but the author seems to have overlooked the Litter Robot: http://www.litter-robot.com/ My friend has one and it works very well (for years now). It just uses off the shelf cat litter. The mechanism is 'brute force' rather than optimized, but it works: after the machine senses the cat has stepped out by the change in weight, it slowly rotates the entire cat chamber, causing any deposits to be covered by falling litter even if the cat hasn't buried them by choice, before hitting the mechanical filter that diverts any solids into a disposal drawer. It's purely mechanical, so the odor control/dust level is as good as your choice of litter product. Downsides are that it's a bit bulky and noisy. but there's no DRM and it's so mechanically simple that there's not much that can go wrong with it - it certainly won't bake the cat poop like the machine described - yuck.
peatmoss 13 hours ago 4 replies      
I trained my cat to do its business in the toilet. I cannot tell you how much better this is than any other solution. There are training kits that our friends and family have now used for their cats.

If you live near the ocean, you won't want to do this if your cat could be a toxoplasmosis carrier (I.e. is outdoors or otherwise could be eating rodents). Apparently toxoplasmosis makes it through water treatment and harms sea mammals.

Otherwise, this is a great way to go.

pclark 14 hours ago 3 replies      
tangentially related to blog post but very relevant to cat shit i recently bought a "top opening" cat litter box[1], and its incredible that they are not the norm.

my biggest problem with cat litter is not the shit, but having cat litter be tracked across the bathroom - this is almost entirely solved with a top opening box. additionally, my dog is unable to eat the shit.

[1]: https://www.clevercatinnovations.com/top_entry_litterbox_abo...

monochromatic 7 hours ago 0 replies      
I used to have one of these, and I completely agree with the article. The DRM is shitty, the solution is expensive, and my house would periodically smell like baking cat feces. Eventually unit started to do the turd bakery routine more and more often (a worse failure mode is hardly even imaginable). So I replaced it with a Litter Robot[1].

With the exception of having to buy regular cat litter, which isn't a big deal, it's better in every way. It runs in a couple of minutes instead of like 40 minutes. It's quieter. The litter doesn't get tracked around nearly as much as the plastic pebbles. It also has never turned my house into a shit oven.

[1] http://www.litter-robot.com/

userbinator 9 hours ago 1 reply      
Things like this are partly why I'm wary of the "ubiquitous security" (encrypt everything, tamperproof hardware, signed binaries, etc.) concept that a lot of people are pushing -- yes they can benefit the user but in the current environment of capitalism, chances are that any security measures are going to be used against you, to secure some company's profits, if they become cheap enough to implement.

As an aside, I think it's odd that there's alternate open-source firmware and cartridge resetters for a cat litter box, as well as some 3D printers, and there are completely-open-source 3D printers, but basically nothing at all of that sort for regular inkjet printers.

DigitalSea 10 hours ago 1 reply      
The best purchase I have ever made for my cat was using the expensive crystal litter. It costs way more than the cheap cardboard pellet one you can buy, but each crystal contains some kind of scent and really, I clean it once a day and it never smells that bad. They make a big mess if you don't put a mat beneath the tray though and get tracked through the house like tiny granules of sugar.

I have considered a robot litter box, but seems to me, the cost far outweighs the benefit of not having to change the litter yourself very quickly. These things are pricey and based on what I've read in this post and tonnes of reviews online, they're not particularly that great.

Animats 4 hours ago 1 reply      
This is becoming so common. There are 3D printers that only take their very own special cartridges of plastic filament. The Form I, which started as a Kickstarter project, requires a proprietary resin fluid which costs $149/liter. (It's gone up; it was $130/l a few months ago.) However, it doesn't have a DRM system to enforce that.
dominotw 13 hours ago 2 replies      
I bought litter robot (www.litterrobot.com) couple of years ago and have never been happier.

Please get it.

ddunkin 8 hours ago 1 reply      
Calling the chip 'DRM' sounds like media sensationalism, it really is just 'dumb memory'. Maybe I think this because I knew exactly how the cartridges worked when I did my initial research on the unit (and knew about the CartridgeGenius as an option before purchase), so I had no surprise when it worked how it did.
schoen 10 hours ago 0 replies      
I read some ways into this before I was confident that it wasn't a Cory Doctorow science fiction story!
shmerl 12 hours ago 4 replies      
This is insane. What's next, DRM in cats?
zafka 11 hours ago 0 replies      
We still have the manual version, but this fascinates me. It seems there is still an opening for a high end solution. The race is on.....
ifelsethen 2 hours ago 0 replies      
tldr; protip: potty train.
lotsofmangos 10 hours ago 0 replies      
Go home humans. You are drunk.
mkramlich 13 hours ago 2 replies      
simpler, cheaper, healthier alternate solution: have no cats
Bedbug bait and trap invented by Simon Fraser University scientists
22 points by Wyndsage  8 hours ago   5 comments top 5
jschulenklopper 32 minutes ago 0 replies      
Relevant HN discussion on the 'itch that nobody can scratch' refered to in a story on Medium: https://news.ycombinator.com/item?id=8769925. That story is about Morgellons, for which some explanations refer to the presence of beg bugs or mites.
ommunist 42 minutes ago 0 replies      
No we cannot just simply erase bedbugs from existence. They are essential evolutionary factor of humans. How shall developers scratch their own itch with no bedbugs?
allendoerfer 1 hour ago 0 replies      
These suckers bullied us for thousands of years, but now humankind has this crazy lady on its team so they finally get what they asked for.
wglb 3 hours ago 0 replies      
Such an act of dedication to science how they accomplished "feeding the horde".
001sky 3 hours ago 0 replies      
"Unfortunately, this means Regine Gries is still feeding the bedbug colony every week."


Hobbes, Boyle, and the Vacuum Pump
5 points by mr_tyzic  1 hour ago   discuss
GPGPU Accelerates PostgreSQL
5 points by lelf  1 hour ago   discuss
PixelPals Collaborative pixel art canvas
6 points by eternalthinker  1 hour ago   4 comments top 2
Springtime 11 minutes ago 0 replies      
The demo page is quite anarchic but it's a fun concept. Given a goal there would probably be more incentive for random users to work together on something.
aw3c2 14 minutes ago 2 replies      
Interesting, Chromium's network inspector does not show me how this transmits.
We Invite Everyone at Etsy to Do an Engineering Rotation
252 points by kevingessner  19 hours ago   62 comments top 17
karmacondon 18 hours ago 0 replies      
I'm a huge fan of cross disciplinary rotations of all types. A startup company, or any organization, should act as a unified whole. "It's not my problem" is not an option, especially when the company is small and the stakes are high. Sales depends on engineering which depends on support and management, an interconnected web. Rotations build empathy, lead to innovative thinking from outside perspectives and give people greater context. I've proposed them at several of my past jobs only to be shot down each time. It says a lot about the management of Etsy that they encourage designers and product managers to do a rotation on the coding side, when I wasn't able to convince my team leaders to let php developers from one project rotate to work on another.

"Human resources" has come to mean paperwork and discipline, but the real value of the term is much closer to its literal meaning. Developing peoples' innate capability is very important. Any company can compete to hire the "best people", but the really smart companies put that effort into increasing the value of the people that they have. The capacity of the human mind is one of the broadest and most versatile things in the universe, but most of us quickly settle into limiting patterns of thought. Just a few days of seeing things from a new perspective can make all the difference in the world. Etsy's engineering rotations seem like fun, but I think they will pay off in a big way. It's hard to put a number on increasing teamwork and understanding. Programs like this are a great way to maximize that value.

robertwalsh0 17 hours ago 0 replies      
I loved everything about this article. At my company, we've also found that providing spaces where people are able to work in a cross-disciplinary fashion gives the opportunity for innovative ideas. Every Thursday, a team member is paired with another from somewhere else in the company. While say, a marketing person can get to learn tech it's also very rewarding to an engineer to be able to work with a marketer or a sales person to see that side of the business. Exposing a marketer to engineering may help her have epiphanies like, "i might be able to track how effective my last campaign was by doing X" and an engineer might think about things that could be added to a feature to maximize user growth. We wrote a blog post about our intra-company pairing here: http://blog.scholasticahq.com/post/91759651948/pairing-thurs...
pvnick 18 hours ago 0 replies      
That is just the coolest idea ever. For non-engineers, software can be a sort of black box filled with "code," whatever that means. This knowledge gap frequently leads to conflicts when engineers take longer to build a feature than non-engineers would like, or when things break that just seem so simple. Getting everybody involved in the deliberate, painstaking process of writing quality software is a fantastic way to ensure the everybody is on-board with the way code is written and minimizes interdepartmental friction. Kudos to Etsy!
Wonnk13 18 hours ago 2 replies      
Great idea. I'd love to see a writeup about a rotation in the other direction, ie give engineers a taste of the business side of the house. As a data scientist I speak a lot with Sales and Engineering and sometimes the two teams seem worlds apart...
frostmatthew 11 hours ago 3 replies      
I like the rotation idea, but I can't say I see much logic in the desire to have new engineers deploy to production on their first day mentioned/linked in the opening. At VMware (or at least on my team) we try to have new engineers commit code their first week (this doesn't always work out, and when it does it's usually the 4th or 5th day) and I almost feel that's too soon...first day just seems nuts.

You don't see this in other professions, e.g. I doubt doctors are performing surgery or lawyers are going to court on their first day at a new hospital or firm. I'm just not seeing the value in having someone commit code before they're possibly familiar with the codebase and [unless it's a product they used before getting hired] may be equally unfamiliar with what the product even does.

zavulon 18 hours ago 4 replies      
It's a great idea, but I'm having difficulty understanding the specific task non-coding employees are doing: adding their own photo to Staff page. Shouldn't there be a nice user-friendly back-end interface that would let them do that in about 10 seconds without any code knowledge?
drderidder 18 hours ago 0 replies      
Kudos to Etsy for doing this. I think there's great value in learning basic programming skills even if not everyone has the inclination to become a software designer. Kind of like how taking music lessons has all kinds of tangential value even if the student doesn't turn out to be another Van Cliburn.
hw 2 hours ago 0 replies      
As much as the rotation idea is interesting, and can be beneficial on the surface, I'm not sure if doing so on a recurring basis provides more value than interruption and the setup/teardown costs of context switching.

Sure, a non engineer could learn a thing or two about how code works, and an engineer as well on handling support, but I'd be cautious about these sessions leading to a false sense of understanding how things actually work, which might eventually lead to, for example, a support person making wrong assumptions about an issue a customer is having just because he/she paired on the relevant code base.

IMO cross disciplinary 'rotations' should happen naturally, instead of making it explicit on a certain day in the quarter. Engineers should have exposure on a day to day basis on what customers want as well as have exposure to the product and business side of things in the planning stage of a sprint, understanding why a story or task is prioritized the way they are, etc. Same goes for non engineers like product managers or support personnel who often deal with engineers on an ongoing basis, and the sharing of technical knowledge should come naturally with each discussion.

pnathan 17 hours ago 1 reply      
I'm continually impressed by Etsy Engineering's descriptions of their practices and process.

Rotations are a wonderful idea and, IMO, should be done more regularly.

badmadrad 18 hours ago 0 replies      
From a UI perspective, I don't love Etsy but I think they really have a world class engineering team. This not the first time I've heard of good things from that outfit.
Havoc 17 hours ago 1 reply      
Wish my employer had that. I'd kill for an engineering / IT dev rotation...since those we're close 2nd & 3rd on my choice of career.
pkaye 14 hours ago 0 replies      
I wonder how to do this with engineering that requires deep knowledge. At my work we have SoC designers, layout, analog designers, board layout and firmware among the engineering departments. I don't think we can even rotate within the engineering departments as everything is so specialized.
sytelus 13 hours ago 0 replies      
This should be also applied to within engineering teams as well. Employees when encouraged to move from team to team after certain intervals (such as 3-4 years). There has been argument that this doesn't allow people to specialize but I feel 3-4 years is long time after which returns are probably diminishing in developing specialization. This keeps life interesting and you get insights on how other teams work, their process and tools etc.
radicalbyte 16 hours ago 1 reply      
It's not just tech companies doing this. At Volvo we did it as part of our continuous integration process. It was great fun, it really helped you to understand the business better.
productcontrol 14 hours ago 0 replies      
It is true, i used to clean the bathrooms there and i went on code rotation, or as we called it "stink patrol". I thought the stalls were bad, but man, that codebase was far worse!
gohrt 13 hours ago 0 replies      
Thank you for not putting "Why" at the beginning of the article title.
frsandstone 18 hours ago 0 replies      
This is awesome.
Generating code
123 points by dctrwatson  13 hours ago   60 comments top 10
codemac 11 hours ago 7 replies      
What's so confusing from this post, is the complete lack of motivations for why anyone would want this over a shell script at the root of their project. I'd rather it even blindly rerun the command every `go build` than this half hearted attempt.

This looks much like my team's `make update` rule (that merely runs ./mk/update.sh). Well, except now the dependencies on external tools are scattered throughout your project. Oh and build failures wouldn't even tell you that you need to run go generate.

What a mis-step. Then again, maybe I'm somehow mistaking a build system with a compiler[0]?

[0]: https://news.ycombinator.com/item?id=8733493

dilap 11 hours ago 3 replies      
I have a lot of faith in the Go folks, as I've found the language to be a pleasure to work with in practice -- basically very well-thought-out.

But man, I don't know...having to manually run a generate command when eg changing string constants seems pretty weird. And if you change the constants without rerunning go generate (manually!) you may get nonsense values. It seems pretty creaky!

Maybe it will end up working out well in practice. (As Go tends to do.)

zupa-hu 10 hours ago 3 replies      
What upsets me about go generate is that it is orthogonal to the language, yet it comes baked in. It unnecessarily increases the footprint of the language, while essentially killing any alternative approaches. Feature creep comes one feature at a time, I guess.

[ps. yet thank you big time for being able to program in golang]

uaygsfdbzf 1 hour ago 0 replies      
Committing generated code is just a recipe for badness. I never commit the output of cpp/yacc/etc to git, why would I do that for go stuff?
Animats 9 hours ago 2 replies      
I'm a bit surprised that the Go team did this. They already have a Go code generator for Google protocol buffer marshaling code. (https://github.com/golang/protobuf) This new generator scheme doesn't seem to be suitable for integration with that.

(Why does every language now have to come with its very own build/packaging environment, with its very own directory structure conventions? Go has one, Rust has a different one, Java has several, and a new one for Python was discussed here yesterday.)

zak_mc_kracken 8 hours ago 1 reply      
Little by little, the Go team is reinventing a build system.
bfrog 11 hours ago 0 replies      
This is a pretty simple little thing, not even sure what it really brings new to the Go table except saying to the community "this is how we think it should be done, and how we now do it"
geoka9 11 hours ago 1 reply      
I think the article (and the command itself) is a bit of misnomer. It can be used to run any shell command, which doesn't have to generate anything.
Zenst 12 hours ago 2 replies      
TL;DR Go has its own version of make in the toolset now.
The Humane Representation of Thought [video]
154 points by jashkenas  16 hours ago   27 comments top 13
rayalez 4 hours ago 0 replies      
The interesting part is that a lot of what he is talking about is already possible.

- You can use augmented reality or VR with something like Oculus to display things in 3D space.

- You can use Motion Capture technologies, plus maybe some convenient remote-control/keyboard-like devices to put a human in that virtual space and manipulate things.

Only 2 technologies(Oculus + Mocap) would be enough to accomplish something like this:http://youtu.be/VzFpg271sm8

Give a bunch of people oculus rifts and put them in the same virtual reality - and we have the dynamic stage he is talking about.

They don't even have to be in the same room of course, we have 3D realtime MMORPGs and second-life that already solved that problem!! You could attend a virtual talk by sitting in your apartment with oculus rift on your head.

And of course "downloading a room" instead of a book is already very doable. We already have computer games and engines. That room is like a video game level. Downloading it is not a problem, to explore it all you need is oculus and a simple game controller or a keyboard/mouse.

And in terms of creating such content, the closest thing I can think of is 3D editors, like Maya or Houdini, especially houdini(http://www.sidefx.com), which is the brilliant combination of computer graphics and programming, that allows you to model and program dynamic things visually.

cusack 14 hours ago 0 replies      
I'd push back on the dog in a cage analogy. I think it could be argued that we've narrowed our communication mediums for purpose of effectiveness and efficiency. Also affordable ubiquity. I would argue it's more like limiting a fish to water rather than a dog to a cage. Not to say it can't be improved in light of today's tools though.

Great talk overall, a lot of interesting insights!

Detrus 10 hours ago 2 replies      
First a few nitpicks

1. Walking around a gallery and waving your arms is not enough exercise2. Incremental progress is giving us VR through Tactical Haptics, Oculus Rift, etc. He says his thing is not VR but R or dynamic R. The distinction is unclear, sounds like marketing.

I also had the idea of talking about systems, particularly political systems through models and simulations. Having spent too much time talking about politics, economics, and computer holy wars in text, it feels like a few interactive models could have saved all that time for millions of people.

That said, simulations are widely used to communicate about financial topics, mainly spreadsheets. And the effects of using spreadsheets are pretty interesting https://medium.com/backchannel/a-spreadsheet-way-of-knowledg...

People start thinking in spreadsheets. A lot of the weird merger acquisitions since the 1980's were basically caused by them. Economists already use fancier models. And as with spreadsheets, garbage in, garbage out. Still I feel they'd be useful in casual conversation.

31reasons 13 hours ago 0 replies      
Great talk and ideas. But the idea of representing mathematical equations in the physical form is like supporting the same medium of symbols and just representing it in a different way. But fundamentally math was invented using pen and paper, so the centuries of mathematical thoughts were already slaves to the 2D medium. Maybe it would be interesting to think about, what would happen if we take away 2D surfaces and ask people to reinvent math in a medium that Bret is talking about. How would someone go about discovering, solving, proving mathematical systems without pen and paper? How would you represent 4, 5 or 20 multi-dimentional spaces in a 3D environment ? Maybe pen&paper was kind of abstracting out limitations of physical world so that mind can explore even further.
chewxy 10 hours ago 3 replies      
Call me obtuse and change my view please:

I'm actually quite interested in this spatial learning thing. I had an aboriginal acquaintance who explained to me how his culture would attach meaning to places and even physical orientation (North South East West etc). However, it has been so far very very difficult for me to wrap my head around that. Visual notation imo, has been the most efficient way of communicating between humans. It also helps a lot in understanding.

A lot of what he says harks back to a 1980s/1990s/early 2000s style of teaching with an increasing use of "aids". Using props to teach math is a bit silly (well, asides from geometry, which is inherently spatial). I really cannot see how we can represent the learning of linear algebra in a dynamic spatial manner.

How for example, would one represent higher dimensional spaces spatially, when you really are limited to only 3 dimensions in real life? I am aware that Iron Man style projection tech may actually help in visualizing it, but again, that's a visual aspect of learning, not spatial. The most efficient way of doing so unfortunately is still in algebraic notation.

Perhaps I'm doubtful because the use of props, spaces, songs, moving your body etc has never worked for me in school. Ever. Can anyone share any studies done on the use of these cheesy 1980s-1990s educational aids (the closest analogue to all the things Brett mentioned) in aiding learning?

EDIT: If you're interested, there's been a good book that I read, in attempt to wrap my head around the concept (however to no avail) - Wisdom Sits in Places.

teekert 13 hours ago 0 replies      
Extremely nice, very out of the box.

On TV in the Netherlands we have a program that aims to educate the public (state sponsored tv), every couple of months there is a new episode, they are listed here (but they are in Dutch): http://dewerelddraaitdoor.vara.nl/DWDD-University.2772.0.htm...

So far they were about the big bang, the quantum world, Einstein (All from Robbert Dijkgraaf, now director of the Institute for Advanced Study in Princeton), The cow and silicon valley. They were always set in a large theater (with live public) with a stage full of props (Inflating balloons to represent the inflating universe, buckets of sand to represent the amount of stars in a galaxy, cameras on rails to represent relativity, living cows as well as all their nice parts of meat on display.) These "presentations" are very nice to watch and my wife who is not a scientist always enjoys them as well.

There are also museums like Nemo in Amsterdam (https://www.e-nemo.nl/nl/ontdek/brein/) and Naturalis in Leiden (http://www.naturalis.nl/en/), these places are filled with rooms with stuff to touch and experiments to perform. I'm sure the US is laced with those as well so it is not that ground-breaking of an idea.

A holo-deck would be the killer feature for this way of communicating.

tmerr 12 hours ago 1 reply      
On the topic of how representations relate to programming... if you have ever tried to express some tricky math in code you might have had a sense that it would be more clear if it were written out on paper with the proper notation. That's because mathematicians have streamlined their reasoning by deciding one day, well, I use the sum function a lot, let's call it . Or I'd like to be able to recognize integrals from a mile away so let's call it . Not to mention those symbols come along with a spatial organization: the lower limit of integration goes below, the upper limit goes on top.

Programmers can't easily streamline like this. Maybe there are multiple forces locking us in: the keyboard, text editor, and programming language. Sure, maybe the optimal way to write code is with a string of ascii characters arranged left to right top to bottom but I doubt it. So even in the visual-symbolic space there is unexplored potential.

I'm glad someone is out there tackling these assumptions and much more, I should keep an eye on his work.

On an unrelated note, his website is entertaining: http://worrydream.com/

arikrak 6 hours ago 0 replies      
Looks interesting, going to watch rest later. I wonder if the graph of trade with England is really the 'basis' for all scientific graphs of data. Didn't Descartes develop the idea of graphing Y in relation to X?


niels_olson 8 hours ago 0 replies      
I think something like ipython can get to where he wants to go. I have already used the RISE profile and MDTraj so I can show people my notebook in slide layout, and pull protein models directly from PDB (Brad talks about the provenance of the data). So I can run code live, manipulate meaningful models live. I think some solid navigation wouldn't be too far off. Now we just need holograms. Cheap blue lasers, people. We need cheap blue lasers.
the_cat_kittles 14 hours ago 0 replies      
great talk! one touchstone i wish he would have embraced is woodworking. having listened to the talk, i can see how woodworking is experienced through many channels: tactile (hand planes, saws), visual, spatial, symbolic (plans, designs), auditory (sonic feedback tells you a lot of about the wood, and how well a tool is working), environmental (the workshop)... i feel like adopting his channels perspective helps me understand why that activity is so engaging. certainly gives credence to his claims, too.
GraffitiTim 13 hours ago 2 replies      
Still watching the presentation, but virtual reality is the medium that will eventually allow for a lot of the things he's talking about.

Edit: he later dismisses this, but I don't think he's right to do so.

javajosh 9 hours ago 0 replies      
I've also been thinking about the concrete representation of symbols and the negative "inhumane" impact of screens, but my conclusion was much different than Victor's: screens take us away from the fullest experience of world, and so their use should be minimized. This is basically Victor's conclusion minus the possibility of what I might call "somatic programs" at scale.

That screens are problematic asserts a moral imperative for programmers to avoid writing applications that are designed to be experiential cul-de-sacs. This, in turn, goes very much against the grain of most technologists and the people who fund them, who are all looking to make the most potent screens they can to pull people out of real life as much as possible. This makes great economic sense, but it is unethical.

Most of us who are so fundamentally tied to a screen for so many years at a time would do well to systematically disengage and interact with the real-world as much as possible. What I wouldn't give at this point in my life to put on a hard-hat and help build a bridge!

pokpokpok 13 hours ago 0 replies      
exciting to be young and engaged in technology at a time like this
Salvatore Sanfilippo, the author of Redis: from Sicily with talent and passion
330 points by davidw  1 day ago   53 comments top 17
coffeemug 18 hours ago 1 reply      
Founder @ RethinkDB here.

I've been following (and using) Salvatore's work for a few years, and he's been a huge inspiration for our development team. There is so much to learn from his approach to problem solving -- small, elegant features that do the bare minimum, but do it so well that no other product can come close. I've never met Salvatore in person, but continue to learn from his work every day.

If you haven't spent the time to figure out why Redis is so successful, it's very much worth sitting back and thinking about it. It's the very embodiment of the Unix philosophy, and yet it feels so distinctly unique you can't help but be impressed.

antirez 18 hours ago 9 replies      
Hard to believe I deserve all this kind words, just want to say thank you.
farslan 21 hours ago 0 replies      
Having around people like Salvatore is really nice for remote working developers. Because you can see that working in San Francisco (or Silicon Valley) is not a must for a successful software developer. I definitely agree on that and with time more and more people like Salvatore will working remote in their favorite places without sacrificing their lives (being apart from their families, etc..) just to work in the valley.
atmosx 21 hours ago 2 replies      
I know Salvatore by his nickname (antirez) from 1999-2004 when I was studying in Milan. I knew him as the author of 'hping'. IIRC his nickname featured in some 's0ftproject' articles. Didn't really had a clue that he was the author of Redis! That's impressive, really. I use reds with Sidekiq to run a-sync, background tasks in my Sinatra applications.

I happen to have a mother from Sicily and an entire family there. What Salvatore has achieved is astonishing. There are skilled people in Sicily, but almost all of them leave for a better place due to lack of labour, big corps, good universities and the Mafia which is a VERY real problem in south part of Italy.

That said, the food, the sea and the sight-scenes in Sicily are unbelievably beautiful. Especially the night view of the "stretto di Messina" (the string of sea that separates Sicily) in the summer. Taormina is also mesmerising.

pierotofy 20 hours ago 1 reply      
If you can pull a great product and get sponsored like Salvatore, sure, you can match Silicon Valley and make a good living even in Italy. But you have no idea of how much lower salaries are over there and how much lower you are considered as a professional if you take a normal dev job.

For that, I have much admiration for Salvatore.

Source: Born and raised in Italy until I was 18 before coming to work in the United States.

raverbashing 22 hours ago 2 replies      
Very nice interview

"The Italian culture is a big part of the things I try to make. One of the main characteristics of stuff I make is that they are "strange", don't resemble how a given problem was solved in the past, and I believe that this is a common Italian trait. Also I try to make things that are simple, but trying to get the fine details right"

This is something to think about, and I believe this is right (even though Italians make this too weird sometimes - e.g. excess bureaucracy)

"Your parents are your first VCs, they are investing into you in a moment where you are full of energies."

Heh, typical Italian. (Not complaining,though)

davidw 17 hours ago 1 reply      
I worked with antirez at Linuxcare Italy. Nice guy, besides, of course knowing his stuff. He ought to visit northern Italy more often though :-)
seffignoz 20 hours ago 0 replies      
As a Sicilian engineer working abroad, I always admired Salvatore. I exactly know and perfectly understand what is like to be successful in the comfort of Sicily, I hope someday to be as successful as him and able to come back to my beloved Sicily.
ilamont 16 hours ago 0 replies      
Moreover my wife and I believe that for our parents to experience their grandchildren is extremely positive, so it's not easy to go away.


I live less than 2 miles/3 km from where I grew up, and having my parents and children be able to develop a deep relationship is one of the most important "quality of life" benefits for all three generations. I did not grow up near my own grandparents, and only really got to know one of them through extended summertime visits, so I can really appreciate the difference.

dimitris99 20 hours ago 0 replies      
Salvatore is an inspiration for all the developers living in off the grid areas. I am based in Greece where there are a similar challenges (crap government which almost tries to stop you from building a business) and opportunities (good quality of life(especially if you are not in Athens) - family). It would be nice if we reach a point where our location does not matter that much.
mbillie1 17 hours ago 0 replies      
It's not too often that the top response to the Stackoverflow threads I find via search comes from the main author of the software, but antirez is all over it with Redis - above and beyond, definitely one of the people I most strive to emulate.
faragon 17 hours ago 0 replies      
Salvatore is very talented. Not only because of Redis, which is great, but for other great tools too, e.g. sds: https://github.com/antirez/sds
vdm 12 hours ago 0 replies      
Kudos to the interviewer, Franco Folini, as well as Salvatore; these are excellent questions.
fit2rule 21 hours ago 1 reply      
I'm a huge fan of antirez and his ethos for things .. one of my favourite toys at the moment is his LOAD81 project, which puts a simple text editor (in SDL) and the Lua language together and gives young minds a nice place to explore programming: http://github.com/antirez/load81.git

imho, even this little project reflects the 'weird italian' way of doing things .. ;) It is short .. sweet .. simple, and everything you need in order to create an entirely new sphere of things.

SnaKeZ 15 hours ago 0 replies      
Orgoglio italiano!
curiously 17 hours ago 0 replies      
Luca Garulli created OrientDB and I believe he is also Italian. Super helpful guy too.
Dewie 19 hours ago 1 reply      
How messed up is "our industry" - internationally speaking - if succeeding outside of SC is a major feat?

Or maybe it was more about succeeding in software in Sicily.

Entry Point of JPMorgan Data Breach Is Identified
23 points by weef  6 hours ago   2 comments top
tlrobinson 4 hours ago 1 reply      
"Two people briefed on the matter said that an N.S.A. special team will sometimes work with a corporate victim of hackers to ensure that no trap doors remain."

Well, no NSA backdoors, at least.

Charts That Defined the Global Economy in 2014
37 points by PankajGhosh  7 hours ago   3 comments top
morenoh149 2 hours ago 1 reply      
real sad to see that such a small percentage of the population is gaining so much. I'm for more progressive taxing. Education isnt return the amount it used to. Though I'd love it if more people studied - I don't think the top 0.1% should be allowed to enjoy so much.
Barf bags on airplanes: Are rates of airsickness declining?
12 points by prostoalex  11 hours ago   3 comments top 3
Renaud 13 minutes ago 0 replies      
I don't have proof to back this up, but I strongly suspect that the fact that all flights are now exclusively non-smoking has had a big influence on that decline.

I remember as a child how the smell of cigarette, coupled with the decrease sense of equilibrium that you can experience in a plane, would easily cause nausea.

droidist2 4 minutes ago 0 replies      
A lot depends on the type of the plane. A little DC-9 would have made more people sick than a 767.
Yizahi 45 minutes ago 0 replies      
The only reason I see for declining of actual motion sickness cases is widespread availability of super effective drugs that block all symptoms. When you know that you suffer motion sickness you'll just carry some pills in travel and never even look like a person susceptible to it.
High speed M&M sorting machine
204 points by nbsymr  19 hours ago   39 comments top 12
Animats 16 hours ago 10 replies      
That's low-speed sorting. This is high-speed sorting:


That's a high-speed computer-vision optical pea sorter. Yes, each and every pea in that huge flow of peas is examined by a computer vision system. Tiny high-speed air jets are kicking out the rejects during the brief period the peas are in free flight.

Here's a blueberry sorting machine, throwing out anything that doesn't look like a round blue blueberry:


That machine could sort M&Ms by color, easily.

The food industry has lots of machines like that. The technology was first applied to large fruit like tomatoes. It's now so cheap it's applied to rice and grains.

frisco 17 hours ago 0 replies      
It's a little M&M flow sorter! They even kind of look like cells. If you really want your mind to be blown, go read about flow cytometers: http://en.wikipedia.org/wiki/Flow_cytometry#Fluorescence-act...

Fluorescence-activated cell sorting uses the same idea as in the M&M sorter linked here, except with lasers instead of an iPhone camera and uses an electron gun to deposit charge onto a droplet containing exactly one cell as it falls through a magnetic field to sort it into bins. Madness!

51Cards 18 hours ago 1 reply      
Very cool. I just picked up a couple Mindstorms kits and have been debating my first build challenge. This looks perfect (though it won't be as quick I'm sure)

Edit: Just playing with the math regarding the speed of this machine considering the M&Ms are in free fall. Nicely done!

Zikes 18 hours ago 2 replies      
I'd like to see a variant of this capable of separating a mixture of M&Ms and Skittles.
mrestko 14 hours ago 0 replies      
razzberryman 14 hours ago 1 reply      
Very nice. If you want to reduce the shadows for sorting browns, try backlighting the chute so that shadows can't appear on it. Basically, turn the chute into a photography light box.
dale386 17 hours ago 0 replies      
Is the code posted anywhere?
ChuckMcM 16 hours ago 0 replies      
oh the glue, the glue! M&M sorters are great projects though. I am impressed that the bluetooth link has the frequency response to actually get to the blue ones before they have fallen what appears to be a few inches.
jorjordandan 10 hours ago 1 reply      
Somebody buy this guy a 3d printer.
comrh 14 hours ago 0 replies      
The sound is very rhythmic. One part of a sort machine band.
seanemmer 15 hours ago 0 replies      
but can it sort Skittles?
forrest_t 18 hours ago 2 replies      
if only this existed back in Van Halen's heyday


Popular Myths about C++, Part 3
96 points by jabaldonedo  12 hours ago   69 comments top 10
JoshTriplett 9 hours ago 1 reply      
> To understand C++, you must first learn C

> C++ is an Object-Oriented Language

> For reliable software, you need Garbage Collection

> For efficiency, you must write low-level code

> C++ is for large, complicated, programs only

Well, 2.5/5 of those aren't myths. You certainly don't need to write low-level code for efficiency, C++ does a rather poor job of acting like an OO language, and you don't need Garbage Collection, you just need to not manage memory manually, for which solutions other than GCs exist.

You don't have to learn all of C to write C++, but unfortunately you have to learn C to understand other people's C++, because other people will not restrict themselves to the subset of C++ you consider respectable. That's true both for the C bits of C++ and for the obscenely complex corners of C++.

And C++ isn't just for large, complicated programs; it's for small, complicated programs too.

kgabis 23 minutes ago 0 replies      
That qsort example is getting tedious. I wonder why restrict keyword is never mentioned when talking about C++'s performance advantages over C - it can offer a huge boost on modern CPU architectures. I know it's supported by all major compilers, but still - it's not a part of C++'s standard.
chisophugis 6 hours ago 2 replies      
What Bjarne doesn't mention is the enormous difference in code size between qsort and std::sort. The flexibility of having the compiler generate a sorting routine from std::sort is convenient but enormously redundant in many cases. In LLVM, we have array_pod_sort which is just a thin wrapper around qsort in order to avoid the code bloat of std::sort: http://llvm.org/docs/doxygen/html/namespacellvm.html#ae5788f...

For example, the following generates about 2KB of instructions (and will for basically every new type you want to sort):

#include <algorithm>

struct SomeStruct { int X;};

void foo(SomeStruct *SS, int NSS) { std::sort(SS, SS + NSS, [](SomeStruct LHS, SomeStruct RHS) { return LHS.X > RHS.X; });}

A qsort equivalent will only emit code for the comparator which is just a handful of instructions.

C++ templates may be type safe and all, but at the end of the day they spew duplicated code just as much as those header-only macro-based C containers and algorithms; really more because it's less painful to write templates (vs. macros) and so you do it more, and there is more stuff in the templates. So even though in general the specialized generated code might be faster in most cases (as Bjarne likes to tout), the overall hit on your code size (and i-cache) can be dreadful. Currently, avoiding this issue in C++ just requires diligence on the part of the coder (some optimizations like LLVM's mergefunc can help, but in general it is a pretty hard problem and compilers are not Sufficiently Smart (TM) yet).

fiatmoney 7 hours ago 1 reply      
"C++ is a big language. The size of its definition is very similar to those of C# and Java."

I can't speak with authority to C#, but C++ is a massively larger core language than Java with far more complicated semantics.

ridiculous_fish 6 hours ago 9 replies      
> I have never seen qsort beat sort

Well, here you go: https://gist.github.com/ridiculousfish/bb511993deba1d148317

    qsort: 674 ms    std::sort: 1104 ms
qsort only requires one invocation of the comparator to determine the order, while std::sort often requires two. So qsort ought to be faster when comparisons are expensive.

comex 3 hours ago 2 replies      
Bjarne should know better than to directly compare the performance of std::sort and qsort. One is typically printed in full in a header file, while the other is typically compiled separately. If qsort were found in a header file, it could be inlined into identical code to the C++ version, regardless of the fact that there are void pointers lying around everywhere.

There are caveats: the compiler might not choose to inline unless you force it to, and if you do that then you'll end up with duplicate code in the case of multiple calls with the same comparison function, while C++ can automagically merge duplicates (although you probably want to write a wrapper function anyway, and C++ will still waste compile time generating the duplicates if the calls are in different source files). Also, if the sorting function calls a secondary function in multiple textual locations, and that function is significant enough that inlining it would produce wasteful code, the pure inlining-based approach will be insufficient (but I don't think most sorting algorithms do this).

In other words, C++ makes it easier to do this sort of thing. No surprise! It certainly makes it prettier. But when it comes to performance, in practice the above would likely not be a big deal for qsort, so the difference between the two functions is really more a matter of convention regarding the implementation location. Benchmarking the two and explaining only that type safety "makes for excellent inlining and good optimizations" is simply misleading.

stinos 1 hour ago 0 replies      
I used a container version of sort() to avoid being explicit about the iterators

Is that something new in C++14, coulnd't immediately find it on the net? Or is it just a version he wrote himself? The latter makes sense for pretty much all algorithms in <algorithm> which you'd use often on a container, to the point you'd start wondering why the standard doesn't provide them built-in.

chuckcode 3 hours ago 4 replies      
One of the reasons people use "low level code" for performance is because the STL doesn't easily provide control of memory which is critical to performance. Electronic Arts wrote their own version of the STL largely so they could better control memory [1].

I'm not really sure about the rest of the myths. I'm a little confused about how "To understand C++, you must first learn C is a myth since C++ is a superset of C so you kind of have to learn C.

[1] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n227...

pavanky 8 hours ago 3 replies      
The C greater function is unnecessarily long

  int greater(const void* p, const void* q)  {     return *(double *)p - *(double *)q;  }
would work just as well.


jayvanguard 8 hours ago 6 replies      
In 1995 C++ it wasn't a good choice. In 2000 it was a poor decision in most cases. In 2005 it was a bad decision in almost every case. In 2010 it was completely indefensible. It is almost 2015, why are we even talking about it? C++ was a mistake. A bad detour on the highway of computing.
Meteor and Qt
151 points by achipa  17 hours ago   28 comments top 8
achipa 16 hours ago 0 replies      
There were some concerns as to how native this is - I'm not rendering any HTML. The client side does use the JSON-style QML, but that's just the declarative UI language of Qt - your high-performance code can be C++, Java, or whatever is the native language of the platform. If you wish, though, you can write your whole app in JavaScript, too, but that's an option, not a requirement.
achipa 17 hours ago 1 reply      
Hi, I'm Attila, the developer of Qondrite - the interface between Meteor and Qt in the article. If you have any questions, feel free to ask, I'm always looking for new perspectives, comments and will be happy to answer!
jakozaur 17 hours ago 2 replies      
There is a lot opinions on HNews that Meteor is too monolithic and it's bad:https://news.ycombinator.com/item?id=8772563

However, that kind of projects show the opposite. It is in fact very modular.

jonpress 9 hours ago 1 reply      
Meteor is monolithic in that it forces your app to be structured in a particular way - It dictates how you should handle your data and how your scripts get loaded/bundled into your app. That said, I think it's much more flexible (and scalable - In a business sense) than a closed solutions like Firebase. I think Meteor is suitable for most projects and monolithic isn't always a bad thing - There is some negative stigma around the term but it's not entirely fair. People don't go around calling Linux 'monolithic' even though it is!
dcsan 7 hours ago 1 reply      
This is really interesting. I use meteor for the web, but am frustrated with mobile html5 client clunkiness.

If i understand: - your UI is written in QML. - you are using Asteroid to turn DDP protocol messages into JS events?- are you then reactively changing the QML markup and asking QT to re-render your UI? I'm interested how this part works.

How granular is the reactive rendering, ie the whole page every update, or just changed components (like reactjs DOM diffing)?

Have you dealt with other client side things like routing and page changes, or is it currently content for QML widgets?

How far does QML allow native widgets like tab controls? Does a QML app end up just as janky as html5?

Did you look at just having a QT application that would talk DDP? I guess QML looks like json/markup so it's more appealing for porting an existing meteor app, and it's markup rather than code, but some mapping to QT would presumably give much more control?

How do you deal with client side logic? If QML is just a layout descriptor markup, if you need actual logic client side, how do you bridge between that and the meteor backend? I see Asteroid allows you to send data back and call Meteor.methods.Oh I see QML actually anticipates modules in JS:http://doc.qt.io/qt-5/qtquick-tutorials-samegame-samegame3-e...http://doc.qt.io/qt-5/qtqml-modules-topic.html

Does QML support a webview component? In which case you could also mix in some pages just as webviews if you didn't want to rewrite your whole app in QML? Then again only attractive if the QT webview component uses latest chrome renderer at an OS level, and no JS bridge was required back to your app... that would be like a turducken anti-pattern.

Overall very interesting, thanks for sharing!

antoniuschan99 7 hours ago 1 reply      
My stack uses Appcelerator, Rails, and Meteor.

Appcelerator... kind of sucks. But it's much better than HTML5. It performs much better than HTML5, but I find it very hard to write. There's just way too much quirkiness and hacks to make it work. The only thing I like about it is that it's written in JavaScript (but it would be fun to learn a new one).

How does QT compare in this regard?

rattray 14 hours ago 1 reply      
Wow, QML looks... really nice. Has anyone used it to deploy cross-platform apps to iOS/Android? What was your experience? Biggest drawbacks?
adrianlmm 17 hours ago 1 reply      
What's the difference between this and Xamarin?
How Headlines Change the Way We Think
7 points by unclesaamm  6 hours ago   discuss
Attack Is Suspected as North Korean Internet Collapses
358 points by jcfrei  15 hours ago   174 comments top 29
eyeareque 15 hours ago 7 replies      
The public /22 (1024 IPs) that is used by North Korea is widely known now, so it is bad form to assume the US is behind this attack. Heck, a 14 year old with a few bots could take down their whole country.

This outage won't hurt North Korea. At best it makes for a good head line to see the whole country offline. At worst this means that their elite citizens cannot access social networks or email outside of their country.

I really hope this isn't the doing's of the US government. You'd hope they could do better than this..

Alupis 15 hours ago 3 replies      
This is occurring after the hacker group who claimed the attack (Guardians of Peace), sent the FBI a letter thanking them for blaming North Korea, calling the FBI the best (sic), and linked to a youtube video that called the FBI "an idiot".[1]

[1] http://www.cnn.com/2014/12/22/world/asia/north-korea-us-sony...

SEJeff 15 hours ago 5 replies      
Do people seriously think the USG is behind a ddos when Anonymous has already stated they are going to go after the DRPK?


vlunkr 13 hours ago 4 replies      
Is it weird to anyone else that all this "cyber warfare" is happening over the release of a movie. A comedy movie, not a documentary or propaganda film. I don't know if media has every had such an inadvertent impact on politics before. I would say it's a strange age we live in, but I think this strangeness is all from North Korea.
jgwest 12 hours ago 2 replies      
Maybe it's the doing of the U.S. gov't... maybe not...

But in any case, what's the point of keeping the U.S. government's action or non-action secret?

As the linked piece states:

"If the attack was American in origin something the United States would probably never acknowledge ..."

It's sort of like the Doomsday Machine in Dr. Strangelove: it just doesn't work as a deterrent if you keep it a secret.

Or is all this secret "cyberwarfare" capability that the U.S. government is secretly building only going to be used in secret?

leke 53 minutes ago 0 replies      
Sometimes I think the US's responses are so disproportionate, if someone was to actually attack their country, they would respond by attacking the entire world.
uean 13 hours ago 0 replies      
With such a small subnet, the idea that all the various sysadmins who read this article are immediately going to run a quick ping check to confirm NK is still down, and that in itself turning into sufficient traffic to DDoS the entire country, makes me giggle a bit.
yourad_io 14 hours ago 4 replies      
Trying to inform oneself about a technical matter through a mainstream news source is an exercise in frustration.

Maybe my English needs work. Could someone with superior English skills to mine, please decipher the article and tell me:

Is there any actual evidence of an attack? Has traffic spiked through/from NK?

Or could this be them "pulling the plug"?

Because the first case is: "Someone attacked NK Internet and brought it down", while the second "NK Internet IPs were \"withdrawn\" from the net".

oneofthose 15 hours ago 0 replies      
This article reads like an excerpt from a Vernor Vinge novel, in particular `Rainbows End`. Amazing.
keeran 12 hours ago 0 replies      
This all stinks (TBP included) of a media blitz to prepare the greater masses for further restrictions to their Internet abilities.

"Sure a content filter makes sense, there's a war going on."

Rapzid 11 hours ago 1 reply      
Obama already calibrated the governments stance on this ordeal when he said the Sony hack was vandalism and NOT terrorism. I don't believe the government being responsible for NK's internet problems is in line with that.

He also seemed to believe that the fault for any censorship as a result of the hack lies squarely within the US.

jmnicolas 15 hours ago 3 replies      
Of course, NK won't be pissed at all and they're not going to retaliate at all (yeah I know it's probably the goal of this attack).

This might be the first steps of the first cyber world war for all I know.

The only good thing is that only the elite will be affected by the collapse of NK Internet (no porn for a while). The average citizen probably can't even grasp what the net is, and none of her life is linked to it.

wahsd 14 hours ago 1 reply      
So, has it been 100% confirmed that NK is behind all of this? I don't know, I realize that NK is like some hormone crazed pubescent boy, but shit just seems weird.

What if this all turns out to be some trolling by some third party, maybe even not government affiliated.

seanemmer 11 hours ago 0 replies      
More informative article from Huffington Post:


downandout 15 hours ago 4 replies      
I suspect this to be the work of the US government, but out of curiosity I wonder if there would be any legal consequences were Sony or another private party to launch a DDOS attack on North Korea from the US. Obviously no one would be extradited to NK, but I'm curious if that would run afoul of US law.

If not, it might be fun to create some software or a mobile app that would keep this going indefinitely. I imagine a "CrashNK" app would get alot of downloads.

ElectricMonk79 10 hours ago 0 replies      
Cutting off a major source of communication to a paranoid and armed nation seems like a really bad idea. Ask any horror film director - imagined enemies and actions are much worse than being able to see the monster.
luftderfreiheit 15 hours ago 5 replies      
What fascinating times we live in.

My interpretation of the general history of warfare is that countries agree on restraint once some situation has occurred that all sides agree should never happen again. Mustard gas in WWI, nuclear weapons in WWII...

Hopefully this doesn't spiral out of control. It's not clear where the boundaries are that we don't want to cross.

seomis 1 hour ago 0 replies      
o did somebody kick the server
hardwaresofton 15 hours ago 0 replies      
No offense (to any who might be vehement supporters of NK I guess, though I can't imagine there are many), but I can't imagine the NK internet is/was very big/strong/fault-tolerant.
Monotoko 14 hours ago 0 replies      
Recently a scan of the IP space was put on /r/netsec - I don't think this is coincidence.
ilamont 15 hours ago 2 replies      
If this is the work of the U.S., it sets a very bad precedent.
graycat 10 hours ago 0 replies      
Well, NK likely does not have the bestelectric grid. So, maybe the problemwas just their electric grid! Or maybethe problem was someone clicking on thewrong icon or push button in some systemmanagement software, maybe written in NK?

But if the outage was from a DDoS fromthe USG, then I have to regard it as mostlya publicity stunt: That is, I have tobelieve that the NSA and CIA havemuch better control over, penetration of,NK computing than just a DDoS!

I mean, NK has, what, bootleg, never updatedcopies of Win 95, Win 2K, Win XP SP0, reallyold IE with lots of ActiveX pages, reallyold FF and Flash? The place has to be a computer version of a fire trap withouta firewall! NSA and CIA rootkits have to be tripping over eachother all over NK like rats in agarbage pile.

Oh, did someone compare NK with a garbagepile? Oh, how pejorative! I mean, howcould one regard that pinnacle of fashionthat gave the world the unique haircut ofthe Great Patriotic Leader, Jr.?

Besides, their girls nearly all lookso young, that is, small and thin,possibly because nearly everyone thereis thin. Maybe they get a lot of exercise,aren't very warm in the winters, anddon't eat very much, or all of those.

r109 15 hours ago 1 reply      
ooh thought this would happen. driverdan called it, reference: https://news.ycombinator.com/item?id=8777811
classicsnoot 10 hours ago 0 replies      
Could this bay some sort of shot across russia's bow?
kolev 11 hours ago 0 replies      
How immature... if it was the US. So, North Korea (we still don't know for sure) caused hundreds of millions of dollars of loss to Sony Pictures and US caused how much damage to North Korea (which doesn't care much about the internet)?... Well, close to $0. How proportional is that?!
curiously 13 hours ago 1 reply      
This is as useful as announcing we put an embargo on rolls royce pinnacle travel. There's only 15 of it and not many people can afford it anyways.
yuashizuki 14 hours ago 2 replies      
LOL what a phatetic response, after a attack on the first amendment.
sauere 15 hours ago 1 reply      
/edit: posting in wrong thread. sorry. (and stop it with the downvotes!)
lostgame 14 hours ago 6 replies      
Okay, seriously - who else is making the weird, kinda unsettling connection between the recent seizure of the Pirate Bay and this whole 'The Interview' business with North Korea?

If the Pirate Bay was still online, would 'The Interview' have leaked already?

Is the seizure of The Pirate Bay linked to the intentional suppression of the release of this film?

Why would the government raiding TPB concede to do this for terrorists?

I mean, I hate to be one of those conspiracy nuts, but - it really seems like this is all a big distraction for the start of some new strange form of cyberterrorism.

Google Self-Driving Car Project's first vehicle prototype
214 points by justhw  16 hours ago   175 comments top 28
amckenna 14 hours ago 9 replies      
A lot of people are bashing the car's appearance, but I think people forget that putting the first driverless cars on the road is as much a PR challenge as it is a technological challenge. Truly autonomous driverless cars is a huge shift in the way we have operated for almost 100 years. There will be a lot of caution and resistance from political groups, concerned citizens, entrenched interests, etc. The car that they put forward first needs to be non-threatening, safe, and easy to adopt.

Given Google's stake in Uber the car will be part of a fleet that can be summoned by a mobile app, not some product you go out and buy. Because there will be no dealerships and individual owners, they don't care about attracting buyers for the vehicle - it doesn't need a cool factor. What it needs is to be non-threatening and safe so you will feel comfortable getting in one and going for a ride.

Additionally, the first car on the roads will just be making in town trips and will be limited to 25mph - no highways or major arterials. This means it makes more sense for the car to be compact, light, and similar to a Smart Car, than a Camry or SUB.

nichodges 15 hours ago 6 replies      
My initial reaction was dismay that Google seemingly didn't consult any decent auto designers on this. But then I wonder if that's actually fine.

My kids will likely be baffled by the idea that we attached so much of our own identity to our cars. The financial investment in cars to make a statement about ourselves (over and above getting us from A to B) is immensely irrational.

With self driving cars ownership will likely disappear, and be replaced with time sharing. At that point the connection between our view of ourselves, and the car we ride in disappears.

I'm not sure that completely excuses the lack of modern car aesthetic here, but it could go some way to explaining it.

bane 13 hours ago 3 replies      
Lots of people are point at this being Uber's future "auto-car". Here's an alternative idea:

- You can buy this car. It costs $100,000. But that's okay.

- When you aren't actively using it, you tell it to go "Uber mode" and pick up and drive people around as part of the "Uber Network of Cars"

- You split the fee with Uber/Lyft/whoever. They get 30%, you get 70%.

If the average ride pays you $7, over 5 years that's like 8 rides your car has to "sell" per day to be effectively "free" to you (except for financing, insurance, etc.).

- At the end of the workday, Google Now summons your car to pick you up in front of your office and whisk you home.

- After dropping you off at home, your car goes back onto Uber mode and does night-time service (if you opt-in).

You could probably pay your car off much earlier than 5 years with more rides/higher average ride fare, after which your car is making you money. Clever people will use this extra to finance more cars to run small fleets and effectively live without working.

jasonwilk 15 hours ago 8 replies      
The way Google seems to be approaching self-driving cars is the right one in my opinion. Self-driving cars will be on-demand, booked through something like Uber and will not be owned by the end-user.

I feel that the other car companies working on self-driving car technology for consumers are wasting their time. The main reason I enjoy owning a nice car is that I like driving it. If I wasn't in control of driving my car, what would be the point? Vanity of course has to be considered but in the future, I see self-driving cars which we don't own will the the status quo in cities, and owning a manual operating a car will be either a novelty or something for people outside of major city hubs.

LukeB_UK 14 hours ago 1 reply      
Matthew Inman of The Oatmeal got to have a ride in one and shared his thoughts here: http://theoatmeal.com/blog/google_self_driving_car
click170 10 hours ago 0 replies      
One of the aspects of this that I've been getting concerned about is the invasion of privacy that they will pose, especially if it's one or a handful of companies owning an operating the autonomous vehicles.

It's true that if you carry a cell phone you already carry a personal tracking device and offer this information up freely to your cellular provider, but I'm interested in reducing instead of increasing the amount of information I'm leaking in that way.

What kind of information will these cars track? They'll have to track who rides in them for accountability purposes, which I already find troubling. Your average cabby isn't going to be compiling a profile about you based on where you catch rides to.Who has access to the information such as who rides in which cars? Is this available via an open API? I'm already peeved at companies like FitBit which hold my data ransom, is this going to be another of those situations?

There's a lot of privacy questions that I feel aren't being adequately addressed, but I still look forward to the possibilities this will bring. The privacy questions are answerable and any problems should be correctable.

kandalf 14 hours ago 1 reply      
Given that as far as I know, roads must be extensively mapped in advance of a self-driving car going on them, there is a nice bonus of doing self-driving cars exclusively through Uber at first. Uber can know the exact route the passenger wants to take in advance, and only send cars to passengers whose routes are already mapped. Furthermore, they can choose to only send them out when the conditions are good (no snow, etc. assuming conditions are still a problem when these go into fuller production). A nice way to roll the cars out incrementally without some of the problems they might otherwise have...
davidw 1 hour ago 0 replies      
I wonder if these things could be used in potentially 'easier' niches like long-haul trucking: you'd create a loading/unloading port near the freeway, and send the truck to another port across the country.

Naturally, I don't know anything about trucking, and you'd want to be really sure something so big and bulky is safe, but the idea would be, rather than "do everything a car does all at once" to do something relatively simple.

vinkelhake 14 hours ago 1 reply      
To those that get hung up on the design: remember that this car is limited to 25 mph for regulatory reasons. Having a design that is closer to a bumper car than a model S seems fitting with that in mind.
kin 13 hours ago 0 replies      
A lot of people are bashing its appearance. I think it looks cute. So, to each his own on the regard. But seriously guys, this is happening a lot sooner than I thought and I really could not be any more excited to have these on the road.
billsossoon 12 hours ago 0 replies      
Reminds me of the Cozy Coupe [1] I had as a child. Perhaps that's not by accident. The fear is that these machines will be unsafe, either to their passengers or to other cards on the road. Making it cute my reduce the perceived threat level.

[1]: http://www.littletikes.com/content/ebiz/shop/invt/612060/612...

jastanton 14 hours ago 1 reply      
Google has had much more PR about it's revolutionary tech and that has a LOT going for it. When tesla comes out with their self driving car, if it looks 100x better than this prototype, I still might pick Google. Better aesthetics with comparable functionality will win the majority of time in my book (think Android devices vs Apple devices), however when it comes times to putting my life on the line, I will go with something I feel is safer 100% of the time regardless of how it looks. And like always, Google will dominate with it's superior functionality (backed by their PR over the last couple of years) over any tesla any day.
yRetsyM 12 hours ago 0 replies      
I thought this was quite a good commentary on it: http://theoatmeal.com/blog/google_self_driving_car
soyiuz 15 hours ago 1 reply      
3apo 14 hours ago 2 replies      
From an economic standpoint, I would be interested to see how many OTC parts this system. That is, does it need a $1000 lidar or would it get a similar performance with a cheap $100 sensor? From a technical point of view, 25mph is very limiting IMO. You probably do not need a very sophisticated controller to navigate at 25. If you reach speeds of 60-70MPH with varying road curvatures, the controller design gets trickier.
dogeye 9 hours ago 1 reply      
Nobody who has used Adwords believes Google will ever make a self driving car.
jedunnigan 11 hours ago 2 replies      
I don't have a firm enough understanding of how the LIDAR and laser's work in these vehicles, but it occurs to me that it might be possible for a malicious actor to confuse the cars and cause accidents. That's concerning.
jvagner 13 hours ago 0 replies      
Cute, adorable, non-threatening... could have been achieved and still looked.. better, methinks.
Animats 13 hours ago 0 replies      
They've got to make more progress on the sensors. They still have that overpriced Velodyne HDL-64E scanner (about $100K) on top of the prototype. The new vehicle has a slightly smaller device on top, probably the HDL-32E. Google doesn't seem to be making progress on flash LIDAR or millimeter microwave radar, which are going to be needed for reasonable-cost production vehicles.

CMU/Cadillac have a self-driving car. They have a number of long videos taken with a back-seat camera.


It's good enough that it's been driven around downtown Washington. It doesn't seem to sense turn signals or infer much intent from other-driver behavior. The driver has his hand on the auto/manual switch at all times; clearly there's not much confidence in this thing yet.

bbayer 14 hours ago 0 replies      
What is the purpose of Google here, to develop a platform that car manufacturers want to integrate or producing driverless cars under Google brand?
pinaceae 7 hours ago 0 replies      
i guess it has a strong appeal to the hardcore android crowd. people that get excited about utility, but have no sense at all for style. not a bad thing, mind you, but it is already obvious that it will take a company that gets style, like Tesla and yes, Apple, to make this appealing to people on the other side of the spectrum. people who cannot unsee ugliness, assymetry and disproportion.

personnally i just hope roads stay open for motorcycles in the future. self-driven transportation can be massive fun.

brc 11 hours ago 1 reply      
What, exactly, are the mirrors for?
danblick 12 hours ago 0 replies      
What's with the side-view mirrors?
soupcancooloff 15 hours ago 0 replies      
don't worry guys, its only a matter of time until Uber adds another service called UberGrandma/pa and starts targeting senior citizens with this car.(Google Ventures has a stake in Uber)
sparkzilla 15 hours ago 2 replies      
This thing looks like a clown car. Perfect for those who think Glass is the height of fashion.
nodata 15 hours ago 1 reply      
It looks crap.

Google, please don't release that.

(OR: Google, I will pay more not to ride in that.)

manticore_alpha 15 hours ago 8 replies      
Unfortunately, these things just don't have a cool factor. Here's to hoping Tesla moves forward much more quickly (and regular car manufacturers as well.)

It's something Google probably just doesn't "get" - but a lot of people's identities are tied to their cars. It's why we have colors, shapes, brands, options.

This car may be "perfect" algorithmically, but it doesn't mean it stirs the soul.

productcontrol 14 hours ago 1 reply      
Edit: Google staff and fanbois have far too much time to downvote, but less time to articulate why it seems!

I tried to use Google's driverless car, but everytime I asked it to search for rival services, it kept driving me to their search and adsales offices. Was a bit weird. Like they told the car to prefer their services first! My eurotrash friends promised to investigate though, so that's nice.

       cached 23 December 2014 11:02:01 GMT