Hacker Newsnew | comments | show | ask | jobs | submit | michh's comments login

Interesting!

I'd think, in theory the ECMP router could keep track of the MTU on a per IP basis (rather than per TCP connection) based on it having received the ICM unreachable packet. And from that moment on, sending a spoofed ICMP packet back whenever one of the servers it's routing for sends a packet the router knows won't reach the host.

But even if that works, I'm by no means a network engineer, your solution of simply broadcasting the packets is probably more efficient in the real world.

-----


Even though I got a laugh out of it, I propose we change the definition of esoteric programming languages to require more creativity from their designer than reimplementing brainfuck with different tokens for the operators.

-----


Is not based in brainfuck, its a turing machine, and both look that way because any less instructions are not enough for programming a digital computer.

-----


Converting from groot to brainfuck requires simply a 1-1 command translation. It doesn't matter if these are turing machine operations, the point is that there is nothing 'esoteric' about writing down what a turing machine does using a language that everyone already knows.

If I rewrote C to use BEGIN and END instead of { and }, then that's not inventing an esoteric language, but new syntax for an existing language.

-----


The type of abstract syntax trees of this language and brainfuck are isomorphic. There are lots of definitions of what a "Turing Machine" is. If we take the one on Wikipedia as canon it isn't the same as this.

In particular, a Turing Machine is a model while both Brainfuck and Groot are languages. It's easy to see how each of these languages is directly translated into a Turing Machine model (providing them a choice of semantics). Indeed, due to their isomorphism we need only translate one of them to have a faithful translation of the other "for free".

Better yet, Brainfuck and Groot both have a privileged semantic model which is more or less identically a Turing Machine (except Brainfuck merely specifies that the tape is at least 30,000 bytes long and Groot mentions site not at all while Turing Machines are explicitly infinite).

So, they're really closely related to a Turing Machine but honestly separate things more closely related to one another (via isomorphism) than to TMs directly (via semantic mapping).

-----


You only need one instruction for a computer: http://en.wikipedia.org/wiki/One_instruction_set_computer

-----


This. Flagged the submission.

-----


Why are you flagging this? Flagging is for topics that are "spam or offtopic."

-----


Is it on topic?

-----


Somebody wrote a new language/turing machine based off of pop culture, I'd say that's pretty on-top for HackerNews.

-----


So, by your point of view, I should be able to submit the "Moo!" or "Ook!" esoteric languages which are exactly like this one?

I find Groot to be entirely uninteresting. Look up Homespring or Flip :)

-----


> So, by your point of view, I should be able to submit the "Moo!" or "Ook!" esoteric languages which are exactly like this one?

Yes, and they'd be on-topic. Though Zombie [0], from the same creator as Ook!, is probably more interesting.

[0] http://www.dangermouse.net/esoteric/zombie.html

-----


It's awful how poorly IN-clauses are supported (in lots of places, not just PHP) considering how often they're used and how useful they are. I mean basic stuff like being able to use them securely or making programmers write their own checks to prevent SQL-errors on empty lists.

-----


Not many people here will care, but SQL Server with .NET do support binding table valued parameters in lowlevel System.Data (SqlCommand).

I'm using a Micro ORM (Insight Database, https://github.com/jonwagner/Insight.Database) that takes advantage of this. It maps a parameter of type IEnumerable<SomeType> automatically to a TVP. This ORM works brilliantly when you want to get everything out of SQL.

-----


Java has this issue as well for IN clauses.

-----


JDBC 4, released in Java 6 in 2006 supports setArray. However, that doesn't mean that your database driver supports it safely.

-----


No, it doesn't. PHP can handle it fine and we've undergone multiple attacks and security audits [both daily automated ones and professionals by hand]. :/

The problem here was a mistake someone made, not a fundamental support problem with the language.

This is precisely why people mock PHP developers. :/ So many don't even understand how the language f'n works.

-----


I never said it was a problem with the language. I said it was poorly supported in a lot of platforms including PHP and I stand by that.

It has nothing to do with passing security audits or withstanding attacks, there's not a security flauw in the way PHP handles this because PHP or specifically the PDO framework relies on the user to implement this themself. There obviously can't be a security flaw in something which does not exist.

A quick Google search suggests it is not at all obvious to many how to do a parametrised query with an IN-clause using PDO. The highest ranking answer is this SO post: http://stackoverflow.com/a/1586650

Having to iterate the array yourself adding the right amount of placeholders and binding individual values is secure but a lot of boilerplate. Escaping values in PHP and concatting them in the old fashioned way ought to be safe but everyone switched to parametrised queries for a reason: in practice it's often fucked up which leads to security vulnerabilities. The last one, the find_in_set trick, is a clever kludge but a kludge nonetheless.

People shouldn't need to roll their own way to do this because that's where unnecessary mistakes get made.

-----


> A quick Google search suggests it is not at all obvious to many how to do a parametrised query with an IN-clause using PDO.

Alot of programmers can't do FizzBuzz either. If you can't figure out how to iterate and count an array on your own...

I'm sorry but I have 0 sympathy.

-----


Just as I have no sympathy for programmers forgetting to always call mysql_real_escape_string and setting their encodings right in the old MySQL driver, it's not difficult to get right, but tons of people didn't and it made the web a worse place for everyone.

Plus, they might be able to figure out how to iterate and count an array but they might also figure out how to use implode instead which is less code and programmers tend to be lazy. And suddenly they've opened their app up to SQL injection because they forgot or are unaware they now need to do escaping despite using prepared statements.

And since their app might contain my data, I care about this and not just think "those idiots brought it upon themselves".

-----


Ugh. I'm in .nl and our app store still doesn't have Facebook Paper, it's been available in the US store for ages now.

-----


Same, I lost a lot of weight a couple of years ago and it was hard. And it's still difficult to keep the weight off, even though it's been 5 years since I lost it and am on a regular exercise routine.

I've pretty much learned to accept it's something I'll have to deal with for the rest of my life, rather than "I was fat once, I got rid of it, it's no longer a concern, the end."

It totally pisses me off to see people who can't manage to do the same being judged in awful ways by people who were lucky enough not to have to do it in the first place or for whom it was apparently relatively easy and assume it'll be just as easy for everyone else.

I count myself amongst the lucky, I'll never say "I could do it, so you can too." It's counter productive and an awful thing to hear when you're already really trying.

-----


The `<Data Name="key">value</data>` in there makes me sad. It's better than the `<field name="key" value="value"/>` one of our partners uses at work but still...

If there's a good reason for it, it's just as much of a good reason XML isn't suitable for what you're trying to do.

-----


It's not a deal-breaker, but <key>value</key> would indeed be nicer.

-----


For a human to read maybe, but for some generic parsing where there are many diferent keys, I would say <data Name="key">value</data> is indeed better, also makes an XSD easier to create, if needed.

-----


That definitely goes towards the "good reason not to use XML" part of what I said, imo ;)

-----


This is a limitation of the way ETW does structured logging, rather than a design decision in sysmon itself.

-----


I can understand why they wouldn't have wanted to create an XSD covering all of the possible keys.

-----


Free-form tag names invariably leads to conflicts with previously defined tags that are used for other purposes. I don't see how not wanting an unbounded number of different tags would be antithetical to use of XML.

-----


Couldn't that be solved with xmlns?

-----


definitely :)

-----


This. It's so weird when you conclude your mind is having a direct and undeniable influence on your physical wellbeing.

In my case, I can't eat certain foods (I'm still trying to work out which, but it includes chocolate) when I'm stressed. I get severe cramps, bloating, pain and even hot flushes (intense sweating). It happened to me on a train once and people thought I was OD-ing.

And stressed doesn't mean "close to the edge". Just a bit of nerves about something, definitely not enough to keep me up at night, will do the trick.

When the evidence suggested chocolate made me really unwell, but only if I was a bit stressed, it was really hard to accept because it just sounds so weird and implausible.

-----


It's not really surprising, as we already know that the gut is influenced by stress. The main pathways are the vagus nerve and the HPA axis, which control gastric emptying and colonic movement. Stress will either shut down your vagus nerve resulting in reduced stomach emptying, or it will activate the HPA axis and cause diarrhea (or both).

I get IBS myself, so I find it a little strange that some people don't. My guess is that my nervous system is simply more liable to over-activate than most people's. This is useful in that it gives me copious amounts of mental energy and ability to crank out amazing code very quickly and do stuff that most people (present company excepted) wouldn't be able to do, like design and build a compiler/VM for my own programming language, or build an HTML5 web conferencing system by myself. The downside is that I am prone to IBS and burnout.

While there is ample evidence of the brain influencing the gut, there isn't really much evidence of the gut influencing the brain. It seems unlikely that 'butterflies in the stomach' is caused by the gut influencing the brain, rather than the other way around. The afferent vagus nerves do signal to the brain when there is a gut infection, and that can certainly cause anxiety and depression. However most people with anxiety/depression/IBS don't have any active infection, and there is more evidence that it is the brain influencing the gut rather than the other way around. One possibility is that people with these conditions are genetically programmed to release more serotonin, and that happens both in the brain and the gut.

-----


I remember reading the tobacco industry was actually secretly grateful when the EU banned them from advertising.

As I remember it, they were in a stale-mate. The market was pretty much divided up. Most people were loyal to their brand and that was that. Despite that, they were spending a massive amount of money on advertising even though their market shares remained unchanged.

The reason was that if one of them stopped funnelling massive amounts of cash into advertising, they would lose a big chunk of their market share to the others. So they were all paying mostly to maintain the status quo.

With the ban on advertising, the amount of money saved greatly outweighed the revenue lost as others couldn't advertise either so it really only affected new smokers rather than convince current smokers to switch brands.

I see a similar thing happening in my line of work. In our niche of e-commerce every player of importance works with the same online marketing networks and paying rather a lot per sale or click.

There's a whole lot of sites out there which basically exist to infest organic search results, send traffic to us and our competitors and collect their referral fee from the advertising network. They add no value[1]. Without them, the customer would have been similarly divided amongst the competition as well without having to pay for it. Yet, if we stop paying them, we'll lose a lot of business as our competitors will continue to do so.

Disclaimer: this is all as I understand it and in no way my employers opinion or persepctive ;)

1) Some do, by providing extra information or ranking the shops by what's best for the consumer (price, reviews) rather than the most cash-per-click.

-----


In the branding world, the general philosphy is that PR and word of mouth build brands and advertising defends brands and market share.

In your theory, if advertising stopped existing the world would save a ton of money and everyone would maintain market share... but since brands are built on PR and Word of Mouth, brands will always be at risk if they can't advertise and keep you on the forefront of their mind.

They might not lose market share to other big brands, but new brands with a fresh positioning will be able to uproot their position.

-----


Advertising creates a disincentive for trying unknown products. Combine this with brand loyalty from good PR, and you keep control of your market share.

This is well illustrated with Ironbru in Scotland. Lucozade and Tango in the UK in general. The introduction of Fanta into the North American market too, I knew it from the UK and one of the last flavours introduced was actually Fanta Orange (the most popular one in the UK, direct rival with Tango) due to the saturated market for that type of drink.

-----


Could you elaborate on how advertising disincentives a customer from trying a competing product?

-----


Because advertising typically reinforces a products quality. Why would you try a no name brand when you buy Heinz who is the leading national brand.

If you have a vending machine selling Coke, Pepsi and Joe's Discount Soda, you're going to go with Coke or Pepsi.

Personally (here in Canada) I prefer the Noname brand baked beans over the Heinz brand due to the Heinz brand over using the hickory flavouring. However, this is because I grew up in the UK and the Noname brand in Canada tastes exactly the same as the Heinz Baked Beans formulated for the UK market.

I actually continued to buy Heinz Baked Beans for a couple years before I finally gave in and bought one of every brand to get one that tasted like I was used to.

If it wasn't for the advertising I would have likely bought a different brand of beans within a month, not within a couple of years. Why? Because Heinz is the best, surely the others must taste worse! Since then I always try the store brand and lesser brands

-----


That also describes presence at trade shows and conferences.

Quite often those are useless and costly in time and money. Yet companies do it because if they don't and the competitors do then everyone will ask "How come so and so wasn't at the show? Are they have financial issues?" and so on.

So companies spend money on booths and talks without getting much back except to stave off the appearance that something might be wrong.

-----


There's also often a quid pro quo with partners. At a long ago employer, I remember when we decided to drop out of a show put on by a large ISV who was important to some big accounts but certainly wasn't a source for new business, our CEO got a call from their CEO and pretty much was told to get on board if we wanted the partnership to continue.

I've also seen big shows that creaked along for years until one or two major vendors in the space decided to stop exhibiting. Suddenly the emperor had no clothes and the show didn't last much longer.

(There's also just a lot of momentum and interest behind the status quo. Mind you, there can be a lot of value in sessions for attendees and, generally, just getting people together in one place. But a lot of money also goes into staging trade shows that's arguably not really necessary except for appearances sake.)

-----


This has happened to me. We decided last year to take our tradeshow budget and spend it on "point of purchase" materials for our resellers. This has worked well, sales are up 20% this year.

-----


NB, while tobacco ads are banned from TV, they are still everywhere on outdoor advertising, at least here in Germany. Actually, I went on a "street art tour" that turned out to be sponsored by a cigarette company, and they were handing out free cigarettes. So: tobacco advertising is alive and well in Germany.

-----


Germany was referred to the EU court of justice for non-compliance with the advertising ban:

http://europa.eu/rapid/pressReleasesAction.do?reference=IP/0...

Germany also unsuccessfully tried to disarm the ban itself:

http://curia.europa.eu/juris/showPdf.jsf?text=&docid=66366&p...

-----


Australia is very different from that. They banned advertising to consumers in most ways. They still can put ads in magazines for retailers (because they aren't the end user).

Now we also have "plain packaging laws" which means packets cannot have the Tobacco companies design on it. They must be olive green and have government anti-smoking ads, and the product name in plaintext.

-----


Oh, over here that's been banned as well. I thought it was an EU thing but I guess it was our government. They're even banned from sponsoring events.

-----


That is the case in Canada too. Tobacco companies have been banned from sponsoring events since sometime in 2003.

-----


Basically only here in Germany. I was so confused to see a cowboy ad at a metro stop.

-----


Tobacco advertising was never about trying to persuade existing smokers to switch brands - that was the 'cover story'. In reality it was about trying to persuade young people to smoke their brand rather than some other brand. By young people < 21 years old - people do not start smoking once they get past those formative years. Sure the marketing message was different to what Kellogg's have for Coco Pops, however, the 'sophistication' of the imagery was very much targeted at young people wanting to be 'adult'.

Everything tobacco is controversial, however, how does this relate to online advertising for regular things? The only people who haven't heard of eBay will be people too young to have seen the adverts already. Same with every other brand. Everyone will know you can get everything and anything from Amazon. But there will always be this new supply of kids getting old enough to have their own debit card, they will also have impressionable minds and not have their habits cast in stone. Therefore the high pay per sale per click is actually about getting new life-long customers, in much the same way as it was for Big Tobacco.

The tobacco adverts appeared to be about persuading existing smokers to switch brands yet they had this secret darkside 'get em young' agenda. With online adverts there may be genuine 'switch brands' thinking to it yet in reality all that is effective is 'get em young', where this 'get em young' idea is not even being thought about or being looked for in the analytics.

-----


I think they do a good job via product placement in movies and shows. Sometimes they are in "historic" or period pieces. I mean the ones create today by portraying historical periods. Sometimes there is what seems like a deliberate advertising or showing off someone lighting up. Sometimes it is cool villains so it works on a more subtle level "Oh see we are only show bad guys smoking, so we are dissuading young people to smoke".

-----


Tobacco's original mass market advertising was product placement in movies to associate cigarettes with cool movie stars.

-----


Interesting. I understand if you don't want to name your company, but can you share the niche?

-----


Cell plans and phones, but I suspect it's a plague in more markets than just ours.

-----


I disagree, who says there isn't a bug with Heartbleed-like severity in their crypto?

You could flip your argument around and say the fact it took so long for Heartbleed to have been discovered means even OpenSSL didn't have enough people checking it. Which it probably didn't. And Telegram has even less people combing through its source than OpenSSL did pre-Heartbleed.

The only valid reason I can think of is a small and obscure proprietary crypto algorithm and implementation isn't worth the bad guys/agencies' time for finding the inevitable bugs. But Telegram has gained more than enough popularity for that ship to have sailed months ago.

-----


It's more: you can only see how simple it really is once you understand it and it seems incredibly complicated until you do.

And that's incredibly frustrating for both sides of the student/teacher relationship.

-----


>And that's incredibly frustrating for both sides of the student/teacher relationship.

This article, and your comment, reminded me of 'Math Class (Imagined by Kids)' http://www.youtube.com/watch?v=KdxEAt91D7k (2 minutes long)

-----


Heh, hadn't seen that before. I mostly remember wondering why the teacher was always talking about pizza.

-----

More

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: