skysight-inc/HackerNews huggingface dataset:
I find one the hardest aspects of using a regex is all the subtle differences between languages/environments. I use them about four times a year but I feel like I have go read a mini tutorial each time. I know the concepts but I can't remember the special char for whitespace or digits in the particular language I'm working in.
Also the java implementation is so bad. Having to encode it as a string with its own escaping rules is not easy. Then the 3 line api usage is a real hassle.
I wrote an essay/slides a while back which may be of interest to people wanting to know a bit more about basic steganographic image creation and detection:
http://www.cl.cam.ac.uk/teaching/0910/R08/work/slides-at443-...
http://www.cl.cam.ac.uk/teaching/0910/R08/work/essay-at443-s...

Quick improvement to the LSB method: Use JPEG and embed the data in the LSB of the DCT coefficients (still detectable, but not as trivially)

Cool demo though - I'd add a disclaimer though. It's easy to think that it's obvious that people shouldn't use this to store their password in, say, their Facebook profile photo, but..
EMBRACE THE CASE

;)

http://visualstudiowallpapers.com/post/25145983097/embrace-t...
There was too much emphasis on tool choice/religion, Linux trivia, and getting the ‘right answer’ versus solving engineering problems, where multiple tools might have to be glued together to come up with one of many solutions.

airbnb seems to be missing the mark. tools come and go. the 'right answer' doesn't matter as much as the reasoning.

the ability for one to assimilate him/herself quickly and productively into the environment is what they should be looking out for.
> The * operator is used to both declare a pointer variable and to dereference a pointer depending on where it appears.

You seem to be suggesting that this is an inconsistency, it isn't:

int *ptr;

means that

(*ptr)

is of type ptr.

*ptr = 3;

Means the same and affect 3 to (*ptr)
I was under the impression RTS games were synchronous because doing client-server with multiple hundreds of discrete units in existence would require a lot of network bandwidth. The game is "held back" by the slowest machine in synchronous models because the game state would de-sync otherwise, as all that is being sent over the network is player input, rather than every unit's state. Maybe my understanding is wrong, but the "heavy lifting" being done on a central server is not very important in consideration of the required up/download to and from every client.
some of the websec exploits are quite tricky/involved like blind sql injection (https://www.owasp.org/index.php/Blind_SQL_Injection). without tools like sql map you would need to write code in order to recover non-trivial amounts of data using blind sql injection.
Is this the XBox dashboard experience brought to the desktop? That's pretty weak.
Regex is a good example for a bad interface. When usually half of the input needs to be escaped something must have gone fundamentally wrong. I regularly forget regular expressions and look them up again when I really need them.
They are useful but non-intuitive, so I imagine most people relearn them each time they meet - unless you are stuck doing it all the time.
#d7e8e0
Yeah, PL/Ruby looks quite dead to me. Would be nice if someone got development of it up to speed again.
Can't wait for it.
Confirming demand before spending time/money on development is a smart move, most video games don't break even.

The benefit to the consumer is they get to support a game that otherwise might not have been made if they choose to. They get a copy of the game they want.

Benefit to company decreased risk they will make game and no-one will buy + the cash flow + can bypass publishers.

Win/Win.
> It's important to recognise that we're talking about a shovelware market

This. Where $3 are considered a high price you realistically can only produce apps that are worth their low price.

If you try anything different - making a great polished product and trying to strike a hit - all power to you. But then you are playing a lottery and not doing business.

> It's a shame that making any kind of high-end and higher-priced mobile app is probably a non-starter now.

This is what drove us (luckily I must say now) away from mobile to web based SaaS. When we build a mobile app now it's only a complement to our SaaS service and usually is given away for free to get users for our service.

Sadly the geek in me hates the web development stack ... but my inner business guy keeps the geek at bay ;)
Probably a large one.
Of course. I have no intentions of keeping a broken Playstation. It's just baffling if Amazon actually does something about this. Are other people exploiting this or does Amazon do something to people who do not have a credit card on account?

I completely agree with your statement bawllz. This was just a question that got me thinking.
Laptops with UEFI don't have traditional BIOS or POSTs. Mine books in 6 seconds to a usable desktop.
Streaming music revenues up 40% globally in 2012
One important feature for PostgreSQL which they should have mentioned is transactional DDL. It makes applying migrations much less risky since you know if a statement in the migration fails all of it will be rolled back.

After having used PostgreSQL in production for some years I do not know how I could go back to a database without transactional DDL.
Updating intellisense!!
Bambuser - a live video streaming service attacked via DDOS
There are easier ways that will work, so I can't see this being useful, only interesting.
Betamax/VHS (look it up). MySQL had earlier presence, perhaps because it was easier to install? Hence people expected to find it as it was what they knew.
Release it as fast as you can!

From "What Startups are Really Like" (http://www.paulgraham.com/really.html):

Lots of founders mentioned how important it was to launch with the simplest possible thing. By this point everyone knows you should release fast and iterate. It's practically a mantra at YC. But even so a lot of people seem to have been burned by not doing it:

Build the absolute smallest thing that can be considered a complete application and ship it.

Why?

Product development is a conversation with the user that doesn't really start till you launch. Before you launch, you're like a police artist before he's shown the first version of his sketch to the witness.

It's so important to launch fast that it may be better to think of your initial version not as a product, but as a trick for getting users to start talking to you.
I started this because I wanted to learn from other subscription businesses (I run Candy Japan). Also I'm curious whether it's still possible to get traffic for a directory site and plan to blog about the stats later.

Started in May, wrote content every few evenings. Eventually got some help from oDesk, but not sure if that really saved time as communicating / correcting mistakes ended up taking time too. Still a lot to do like letting people add content or write testimonials (not sure I want to allow negative reviews, how do you know they are true and not just a competitor dissing the club?).
OK, serious question. But what do Facebook use for storing their enterprise data, you know the stuff they actually care about? Is that MySQL?
At least is good to know what can be solved with regular expressions, then if you need to solve something you can always look it up in a book or use some software for it (I use RegexBuddy).
Two tips:

1) I use this as a rule of thumb; only launch when it feels like it's version 3.0, not version 1.0. This keeps you on your toes and provides a much better product from the beginning. Remember first impressions are everything, and if customers come and see a smal set of features, they most likely won't come back.

2) Never ever change prices. Unless you're making the product cheaper. If I were to sign up for a service that increased its prices, I would just try and find alternatives. As a customer, it feels like I'm being cheated. Instead, label it as an early bird offer. 30% off in the first 3 months kind of thing. Comes off a lot better.
Why do we need another connector? This is a FU to existing apple dock device owners and an FU to ETSI (http://en.wikipedia.org/wiki/ETSI).

It's like Sony with Memory Stick, minidisc, betamax, blueray (the exception) etc.
That's what grep is for ;-)

But the point is I can't imagine someone getting to that point without previously having learned it.
I'm not in a position to comment on Airbnb's process here simply because I haven't experienced it, so this comment isn't aimed at anybody in particular.

I find it remarkable how many skilled engineers reach for the toolchain first and then find problems to solve with whatever tool they have chosen. Even worse, they often reshape the problem to fit a particular tool and then solve it badly.

One of the downsides of the Github/BitBucket open repository movement is that there are now zillions of tools for these engineers use to go looking for problems.

Kind of reminds me of the database as a hammer story:

When I first wanted to spend some time learning about relational databases, my then boss told me a story about database people, which I’ve found to be remarkably true. The story is, RDB people have found the most beautiful, wonderful, perfect hammer in the whole world. It’s perfectly balanced – not too heavy, not too light, and swings just right to pound in a nail just right every time. The grip is custom-made, fitted to the shape of the owners hand, so that they can use it all day without getting any blisters. It’s also beautifully decorated – encrusted with gemstones and gold filigree – but only in places that won’t detract from how well it works as a hammer. It really is the greatest hammer ever. Relational database guys love their hammer. It’s just such a wonderful tool! And when they make something with it, it really comes out great. In fact, they like it so much that they think it’s the only tool they need. If you give them a screw, they’ll just pound it in like it’s a nail. And when you point out to them that dammit, it’s a screw, not a nail, they’ll say “I know that. But you can’t expect me to use a crappy little screwdriver when I have a magnificent hammer like this!”

http://scienceblogs.com/goodmath/2008/01/22/databases-are-hammers-mapreduc/
UEFI and Secure Boot: The Hell I Went Through
US appeal dismissed in Dotcom case
Actually they did, in USB 1.1 spec. 6.5.1: "The USB Icon is embossed, in a recessed area, on the topside of the USB plug. This provides easy user recognition and facilitates alignment during the mating process."
"Easy to write, hard to read". Perl's influence on Regex shows. Which is fine in most cases.

I always wonder what regexes would look like if they were derived from Python instead.
This is a great opportunity to suggest new features/wishes for this tool. Please let me know what you would like to have to v2.0
I was asked how I could coordinate actions between many machines, and I told them that I could probably use Chef to do a lot of that, which was met with a huge red “no” response. I then had to play bingo and landed on the “correct answer” of “Zookeeper.”

I'm curious about this. I'm only vaguely aware of either system, but I thought they solved rather different problems. Chef handles system configuration (like things in /etc, or "configure memcached to listen on this IP and port"). Zookeeper is more of an API to deal with distributed locking/sync issues for an application itself.

Was this interview question less of a "bingo" and more of a "one-side really misunderstood something"? Or how do Zookeeper and Chef compete?
In the past I've used the government funded hire schemes in London and Dublin extensively and have had good experiences with them. I know how much they cost, so I'm happy to see an alternative.

The only issue I see with this is that it looks particularly easy to remove their locking system. It uses a chain lock, so what is to stop me from "locking" it without putting the chain through the wheel? From there is looks easy to remove their hardware with a spanner as it seems to just be attached to the pannier rack mounting points.
I wonder if Perl programmers are resented for our regex knowledge ;-)
This breaks the golden rule of relationships: don't kiss and tell. Interviewing is the first step in forming a relationship, and it looks like Airbnb dodged a huge bullet by not engaging further.
Smart money in dumb phones
I'm going to go ahead and say a few things, slightly in defense of Airbnb from the perspective of a fan, an observer, and an occasional customer, and also to get these points out of the way.

It's really hard to know the right way to hire SRE's/sysadmins/systems engineers, from a startup's perspective. If your founders are highly technical, they're more likely to be developers, which is a similar profession but frankly different enough to note. In some cases they will be designers, or non-technical people entirely. As your company grows, you need to hire developers first, so at best, you find a (decent) solution to that problem. As we already know, though, nearly every company that interviews and hires developers still does a shitty job at it--not because it's their fault but because it's a genuinely hard problem. It's only after you've grown awhile and your developers get tired of doing all the ops shit that you think to hire SRE's. But at this point, your culture and hiring practices are already pretty set, and set by people who aren't actually SRE's. It can be fantastically difficult to rollback this kind of momentum even if you do manage to get a top-notch SRE or three onboard.

There's another side of this, though. It's both a root cause for the problem and good news for Airbnb: Airbnb's competitive advantage is not going to be having the best SRE's. They're not AWS, Heroku, or Google. So it's not really a problem if they're bad at hiring SRE's, because most companies get away with being bad at things that aren't central to their business. What Airbnb gets right, they get fantastically right. This isn't to say they shouldn't do a better job hiring SRE's. They should. But they're still a great business despite this.
Same with the former French department store programmer who taught us Pascal in high school - punch cards have shaped that generation. That mindset still exists in industries with physical processes, but "measure twice, cut once" is wisdom lost to the desktop generation - experimenting can replace some thinking... But we certainly overestimate how much.
Errm, you do realise the "local area" of the European Union comprises of 27 members states/countries and according to Wikipedia:

With a combined population of over 500 million inhabitants, or 7.3% of the world population, the EU, in 2011, generated a nominal gross domestic product (GDP) of 17.6 trillion US dollars, representing approximately 20% of the global GDP when measured in terms of purchasing power parity.

I'd like to see which company has the balls to pull out of that market.
... or have the list operation return the new list head, which can make it way cleaner. See glib's list APIs, for instance.
N64js: an N64 emulator in JavaScript
Exponential (memoryless) propagation delays, for example. In this case, our Gaussian (ie, suboptimal) estimator performs well due to the CLT, but the optimal estimator is hard to compute.
I think it's essential to know of their existence, but not necessarily to know their syntax inside-out. Basically, enough enough that you're not writing looping and parsing code yourself, using a regex where applicable.
There's no "a must." But I don't consider a programmer to be a good one if he doesn't know regexps.

If you ask "do you personally really need regexps" I'll tell you: don't learn them. As you're asking that question at all, I understand that you're not interested to learn and that you are looking for an excuse not to learn, so do something that interests you.
That's why it's very hard to juggle multiple projects at the same time. Every time you switch projects, you have to flush the old mental models of the old project out and reload the mental models of the new project.

Same thing with interruption, it takes a while to rebuild the mental model after being interrupted.
> Anything that comes out of the whole chomskian hierarchy stuff isn't going to look intuitive.

Why not? Type-0 (recursively enumerable) languages are equivalent to Turing machines, and we've managed to invent some pretty good syntaxes for that. The main problem with regexes really is the syntax. Regular languages are a lot easier to understand (IMO) if you look at the left/right-linear grammars that define the same language as the regex.

Regex syntax as a representation is very close to the FSA used for matching, and that's not necessarily the representation best suited for human consumption.
הברית החדשה
איפה אפשר פרטים על הברית החדשה ?
DCI makes no sense. It hasn't gained traction in the real world.
incentives are tricky and the story is showing what happens when you induce the wrong ones.

They want to have "a free game", a "cheap upgrade" and a "only one upgrade needed". Three things that do not match. If they are going for a free game but that offers the enthusiastic 1% an payed to play upgrade, that upgrade can not be cheap. If they increase to 29.9$, their conversion rate would likely only go from 0.67% to 0.5%, but increasing profits by around 500%.
I think they're a valuable as a simple tool e.g. using :s/^#// in vim.

However, I try to avoid using them in my code unless they improve readability. Using re.VERBOSE can help in Python.

If you find a regex online, you should definitely reference it in your code, to help provide background understanding, such as validating a UK Post Code.
While knowledge how to use regular expression is invaluable, I also recommend learning how they actually work under the hood. It really gives a good lesson when regular expressions are applicable, and when they're not. From my experience, while many programmers are apt in tools like regexps or grammar->parser generators, they very rarely know how it actually works, which results in people trying to parse HTML with regexps or similar things. It is also a good starting point to some very interesting theoretical stuff like the theory of computations.
I find that perfectly readable, except for the \b which I hadn't seen before. It's matching an all-uppercase email address.
The problem is that regexp is often misused as things like html parsers and e-mail validators. Learning regexp syntax without learning when and how to use it, makes you a worse programmer not a better one.
Also, you see people doing simplistic string comparisons using regexes. Which is ok sometimes but is an easy target if your system has performance issues.
Actually, regex syntax isn't primarily a Perl invention. Regexes as software tools go back to early Unix text processing tools (ed and grep, according to Wikipedia), and Perl took the syntax from those tools.

It is true that Perl reformed the syntax in important ways (to the better, if you ask me), and later on extended it a lot, but it's certainly not a Perl invention.
> If I was stalking you as you are absurdly trying to assert

droithomme, has Philip Welch ever said your interest in his past comments on this issue was stalking? You have failed for one hour to provide a single citation showing your accusation is factual!

> you are the one bringing up and promoting the idea that the women have accused him of rape

It's all me, huh? If Google is to be trusted, the word "rape" has been used to describe the accusations against Assange by over a thousand news sources today alone. I promise you I'm not responsible for that.

> The search also turned up that you are interested in the topic of rape in general and discuss it across the internet. I have no interest in your general interest in the topic of rape

Now that's just plain bad faith on your part. My interest is in the basic human rights and dignity of all people. Some women get raped, and as a culture we do a bad job of handling it. We do a bad job of handling when men get raped, too.

> your propaganda tactics are far from naive

You give me too much credit, and yet too little at the same time.

> there is a conspiracy to harm them right here on Hacker News!

I'm not the one spinning conspiracy theories. I'm not the one calling people propaganda artists. I'm not the one who thinks it's all a CIA frame job intended to somehow make it easier to spirit Julian Assange away to Guantanamo Bay.

Yes, it's sadly a common thing for those accused of rape and their supporters to commit character assassination and intimidation against the alleged victims in order to undermine the criminal justice system. I'm far from the first or only person to notice this. I'm not accusing anyone here of doing this, I'm just disappointed that, as always, these tactics will interfere with the ability of the justice system to decide once and for all whether or not Julian Assange is guilty.
I think every programmer should have an understanding of what Regular Expressions are, how they can be used, and where to find a cheat sheet or reference (like www.regular-expressions.info).

It helps to know the basic syntax by memory, but you can just as easily look it up if you understand how they work.
Hence the warning in the original article.

Presumably, someone caught out after the 90 days could boot from a live USB and copy their data over to another device.
I agree with you, and would never do something like that myself - however, AirBnB is not without fault here either.
They've conducted an interview in such a way to piss this guy off enough so he goes ahead and blogs about it. Usually we only see posts like that about interviewing at Google, Microsoft, Amazon, etc - so if I was AirBnB, I would definitely look into their hiring process.
Well, I was going to refer you to dribbble, I bought a pro plan, looked for good designers near me and talked with the best I saw.

Maybe your problem is the message you send them, you have to make them feel interest in your product. The better the designer the more difficult is to make them feel interested and work with you.
See this: http://geekomotion.posterous.com/3-months-later-gmvault-17-b... (Gmvault 1.7-beta)
"Encoding used to be an art form." It's gone downhill but there are still people keeping a high standard. YIFY is known for releasing high quality 720p h.264 Blu Ray movie rips that fit on one CD (700MB), and 1080p rips that are 1GB. Their stuff looks good, better than cable HDTV or Netflix to my eye.
Where is the story here? You can have the best game in the world but if no one can figure out how to buy it - of course you will go broke. Isn't this common sense?

I see you have finally figured this out (now that you are homeless). If that does not boost your revenues - Lower the price to 1.99 or $0.99. We are in a bad economy and $2.99 is not in the sweet spot by any means.
Try finding a good "when's the next bus?" for London on Android, and then tell me that discovery isn't an app consumer problem!
רשלנות רפואית
ממליץ בחום על אתר עורכי דין שמתמחים ברשלנות רפואית, הם מטפלים מכו שצרךי ברמה מקצועית ב רשלנות רפואית :)

רק הם !
"Don't kiss and tell" is male code for "yes, yes I did in fact have sex with her".

I think it's important to share interviewing stories. Both for other startups to learn from, and for future employees to know what they're heading into.

Or is it not every manager's wet dream to have good guys right out of university who won't hide their true skills by being incompetent/nervous at interviewing?

Conversely, is it not every young guy's wet dream to be able to display their true skill in an interview, rather than mess it up by being bad at interviewing?

Where are they to learn if nobody shares the stories?