skysight-inc/HackerNews huggingface dataset:
I'm a professional writer and editor. I regularly hire technology experts like you to explain things to other tech experts.

There are several paths you can follow. I would start out by writing for yourself, first. That could be a blog or even a daily journal. (The Artist's Way by Julia Cameron is recommended.) At this point don't worry about what to write; just get yourself into the habit of articulating your thoughts. Nobody needs to see this, just as they don't need to see your first Hello World efforts with a new programming language. It's okay to fail. In fact, it's necessary.

Another reason to write first for yourself is to discover what you like to write and what you're good at. (Ideally these overlap!) By writing for myself, first (originally in computer user group newsletters) I taught myself how to write a product review, and if I say so myself I became damned good at it. (Well, I don't have to say so myself; these days I'm a top reviewer on Amazon, and it's just a hobby.) You might discover that you like doing "follow the bouncing ball" how-to articles, or that you find them painfully difficult. You may discover a fondness for writing round-up articles (5 bug tracking tools) or reviews of programming books. Or a really effective rant. Whatever... the point is that you should try to write in different categories.

It won't take long before you begin to recognize your writing weaknesses, even if you don't know how to fix them yet. Again, like software development: You could realize that you tend to write software with memory leaks, even if you don't know the skills to fix it yet. But seeing what needs to be improved -- at least in your own head -- is important. Because if you think you're perfect, you won't learn from others.

Only then should you start to get feedback.

Whew, this is already pretty long. Let me know if it's on the right track, and I'll keep going.
Doorways, access hatches, and the like are designed for human-sized and human-shaped entities to pass through them. Stairs are problematic for wheeled locomotion.
>You would hope, but sadly not much as changed.

The finance industry has a terrible reputation for blatant sexism for example however it's been proven categorically by the world largest finance recruitment firm that over the last 70 years the number of females in executive positions in finance is steadily and blatantly improving.

Their studies also prove that there is still a gender issue in finance but claiming that not much has changed is categorically wrong.
This is awesome. I even like the bio at the very bottom: Francesca Borri published two books, one on Kosovo and another on Israel/Palestine, while working as a human-rights officer. She turned to journalism when she realized that power players were more upset by what she wrote than what she did as a jurist.
Data, Data Everywhere, Not a Second to Think
Cultural norms among men create pressure not to call out other men for misogynist and homophobic "humor." A man might be able to "get away with" making such remarks around other men, but it is very incorrect to infer that a lack of complaints means everyone around you is actually at ease.
Germany's human rights record is decidedly mixed.

(Source: my mother)
May you link to patio11's article on productizing? Can't find it on his blog.
This sort of abusive, insecure extension poisons the well for all extension developers. Now, I wish to submit a couple of feature requests to the Chrome team.

1) I wish there was a way by which an extension could declare its access patterns in much more fine-grained manner (kinda like CORS headers). Then I can prove to my users that my extension cannot do the sort of ugly crap that Amazon is doing.

2) Second is an API to expose details of an XMLHTTPRequest's (or maybe even 'document' object's) SSL server certificate. Even a binary blob will do: I can parse it in JS. Without this, you can't do "certificate pinning" for extensions.

Chrome extension permissions are too coarse-grain. Why is DOM write permission not separated from DOM read perms?

If Google doesn't crack down on abusive extensions like this, they risk users losing trust in the Chrome "brand". Just my 2 cents.
If a server goes down it might be an inconvenience and a bad day, but if a plane goes down it could be a fire and hundreds of deaths.
UDP is really great, but it also makes it extremely easy to spoof the source IP and flood your monitoring server with fake metrics. It's probably not a huge concern, but something to be aware of. See a blog post I wrote in the context of statsd/carbon[1]

<shameless plug>
Also, if you're looking for a nice open-source front-end to graphite, take a look at Giraffe[2]. It also has a collectd plugin[3]
</shameless plug>

[1]http://blog.gingerlime.com/2012/statsd-and-carbon-security/
[2]http://giraffe.kenhub.com/
[3]https://github.com/bflad/giraffe-collectd
thanks for letting me know. emailing the mods.
I'm from Canada and I've never heard of anyone including a photo in any sort of job application.
Some of these quirks are explained incorrectly. I find the real explanations interesting, so please allow me to provide them.

> 999+1 is not 1000

The examples given in this section do not actually show what the poster thinks! Python's interning of small integers is not relevant. It only applies to integers in the range -5 through 256.

The real explanation for why "1000 is 1000" evaluates to True has to do with the Python compiler. By evaluating this expression as a single statement in the interactive interpreter, the compiler notices that the constant value 1000 is repeated more than once. Therefore, it is able to re-use the same object.

But if you provide the value in more than one statement, the compiler is unable to do this:

>>> a = 256
>>> b = 256
>>> a is b
True
>>> a = 257
>>> b = 257
>>> a is b
False

Note that this behavior exists because each statement in the interactive interpreter is compiled separately. If you place the code within a function instead, the entire function is compiled at once, and the object is reused once more:

>>> def f():
... a = 257
... b = 257
... return a is b
...
>>> f()
True

> Ellipsis?

Apparently Ellipsis is always “bigger” than anything, as opposite to None, which is always “smaller” than anything.

Not so. Ellipsis follows Python 2's default rules for the comparison of unrelated types.

>>> Ellipsis < ()
True

The default is documented as comparing objects "consistently but arbitrarily"[1]. The actual rules are:

1) None is the smallest object.
2) Followed by numbers.
3) Followed by all other objects. Objects of distinct types are compared by the lexical ordering of their type names.

This can easily lead to senseless orderings, when two types define an ordered relationship between themselves, but another type happens to have a name that is lexically between them, as with str, tuple, and unicode:

>>> "def" < (1,)
True
>>> (1,) < u"abc"
True
>>> u"abc" < "def"
True

The Ellipsis constant is an instance of a type named "ellipsis", and so it is smaller than instances of most of the other non-numeric builtin types, except for dict.

The actual use of Ellipsis has nothing to do with recursive containers printing an ellipsis in their repr. It's part of a wacky special syntax that exists for NumPy's benefit:

>>> d = {}
>>> d[...] = None
>>> d
{Ellipsis: None}

[1] http://docs.python.org/2/reference/expressions.html#not-in
Congrats on your success! As for GMail, my 2 cents is that it's an unprofessional image to project using anything other than your own domain for email. I use Fastmail with my own domain right from the start on my projects. Get a domain for a year & add it to a 'Professional' Fastmail account & set up an alias. The initial 'Professional' account setup is the expensive part if there is any to be considered expensive. I think it's worth while.

Good luck, however you do it.
An extensible approach to Browser security Policy
Yep! Not saying that it's impossible, just that some of the concepts that Lisp is based on make these things harder to pull off. The reason for this is that Lisp emphasizes flexibility, and the more flexible your runtime environment is, the more ways to do something, which makes it easier to have hard-to-maintain code (and harder to reason about performance, too). But it's not impossible to do with Lisp for sure.
Agreed, maybe that's why fewer tools (if any) exist to do things like programmatic refactoring in JavaScript (does WebStorm do that at all?)

That being said, I've found the language a pleasure to work with (aside from browser incompatibility issues) and with the proper application of design principles such as modularity (check out require.js and the r.js optimizer) and, yes, DRY, I can be just as productive, if not more so, in JavaScript as I am in any statically-typed language.
>"OMG $200 an hour — that's like $400k a year full-time! That's insane!"

But it's not full time and that's precisely why it costs roughly 3x contract rates. A portion of your year is "down time" searching for projects and no one is paying for that. So you put that into your project costs.

If the companies you're pitching don't realize this you're probably pitching to the wrong companies because it's pretty well known.

EDIT: Also, if they want a compare then have them compare you coming in doing this project to the cost of hiring and training a permi and then letting them go. Most likely the turn-around for a permanent employee is going to be 6mo at an absolute minimum (unless it's Zynga or some serious scumbags) where as your project could be hours or weeks.
How come we rarely hear about fires in Lithium-based battery packs in consumer electronics? I mean, it surely happens occasionally, but it has to be a very rare occurence.
I've been using DDG and Firefox for years now, and don't miss Google at all.

The main thing I'm really annoyed with DDG about is that they don't (no longer?) treat double-quoted search terms as literal. I'll often get results that are close to but not exactly what I asked for.

This is really frustrating, as my entire intention in double quoting search terms is to ask for exactly those search terms and nothing else.

As far as DDG's privacy boasts go, I'd love to see them confirmed by frequent audits from a trusted and respected entity like the EFF. For all we know, DDG might be lying (or being forced to lie) about not tracking or spying on its users and not handing over the data it collects on us to others.

My motto is: trust but verify. So far, there's no way to do that in the case of DDG. Still, I'd much rather use a service that at least pays (pretty convincing) lip service to respecting its users' privacy than services where there's clear evidence of abuse and contempt for its users' privacy, such as Google or Facebook.
Can anyone fathom a potentially benign reason Amazon might do this?
I didn't say they were mutually exclusive, I said one bothered me more than the other. You're right that there is a pattern of abuse of the citizenry coming from this administration, but don't think that abuse is as accepted or as systemic in the USA compared to the Russian or Chinese regimes.

Thus the hypocrisy - China and Russia have brutal, repressive governments that do not have moral equivalency with the USA. That said, I don't think the scenario you pose is analogous. If Snowden flew to China and revealed we were spying on China, that would be regular old treason.

If a Chinese national came to America to reveal to the world how China was spying on its own people (what good would that do as this information would be censored out within China?), he would be going to a less repressive land from where he left. Thus, no hypocrisy.
The self-healing aspect of the asphalt is very interesting, but the big problem with porous asphalts (there's a lot of research in the area performed by Purdue, US DOT/Volpe Center and other places) is that road salt and dirt tends to clog up the pores over time, reducing the drainage and noise-reduction properties of the material. I was disappointed that the presentation didn't address this.
Why is this a big surprise? I'm sure that you would find similar features on the eBay extension or any other 3rd party online store. The problem is really in how the permissions are displayed and users are so willing to give full access to their browser through extensions.
Lisp's optional type declarations don't provide any compile-time guarantees though, they're just hints. (Although some implementations do use them to make compile-time checks.)
Yeah, that's why collectd supports authentication and encryption (https://www.collectd.org/documentation/manpages/collectd.con...). I can't really speak about Graphtie since I'm less used to it; but in this case you can decide to not expose the Graphite port and only expose the collectd port.
There's some strong (i hope a decent number of people here would say "winning") counterarguments, scala macros and implicits are incredibly useful. (i see lots of complaints about C++ template error messages, but i haven't been doing C++ so can't comment informedly)

I think a better rule is if the tooling can't look at the source, intermediate compiler stages/ AST and bytecode/binary and tell you unambiguously where something came from, then you can characterize it as a "last resort"

And there's the counterargument that for statically typed languages with good type systems (scala, haskell, ocaml, F#), there's REPL prototyping/testing and code generated from template haskell or camlp4 has to type check, so you have multiple safety mechanisms
Putting the RUM in API Monitoring
Follow the APIs you care about with API Changelog
IIRC, this is the exact reason why Airbus opted that of that technology for its upcoming dreamliner direct competitor, even if the possible reductions in weight and size were very compelling.
> Quasicrystals were the first thing I thought of...

I searched your link, I did not find quasicrystals suggesting anything related to memory storage. Why quasicrystals?
From this video, if it was the batteries, the new containers don't look very fireproof: http://www.bbc.co.uk/news/uk-23295115
Wow,how does that the even happen? And how could that contractor in good conscience bill your company for his own personal work.
When working with dynamic code, it’s an incredible boon to productivity to be able to quickly locate the definition of functions so you can build a complete mental context about what’s going on.

Imagine the 'incredible boon to productivity' you could get from tools (text editors, IDEs) that can deterministically show you all references or definitions of any method, variable, or class throughout your codebase whenever you want. (Hint: this isn't a dream--this is a huge plus of working with statically typed languages.)

For all of the pop-trendy love that dynamic languages seem to get for 'being fast for development,' (read: hacking) it's tragic how much they slow you down when you need to start hunting down where the hell something was magically (or meta-) declared or changed, especially when you're working with someone else's code (read: real life.)

The grep test seems like a great approach if you're stuck with a dynamic language. Of course, we don't always have the luxury to choose the technologies or platforms that we work with, but you've got the choice, a statically typed language solves this problem out of the box.
Nice observation.
One of my colleague got a stern warning for using the word dick ( 'dont be a dick' kind of way) around female colleagues, because two women sitting behind him complained to management about it.
I am sure he is not discriminatory, biased or misogynistic.

I guess it wise to think about what you are saying and not say stuff like 'fuck off', 'stop bitching' which may be construed as inappropriate.
Lisp macros are a lot simpler and easier to understand than what goes on with the types of metaprogramming done in ruby/rails. Expanding a macro is a lot easier for me to wrap my head around than stuff like dynamically defining methods when something is subclassed or when magic happens in method_missing.
I couldn't agree with your sentiment more. A great antidote to having to fire quickly, is to be better at hiring effectively (a task much easier said than done). Most of us at startups, being driven by younger people that have not had the chance to develop managerial experience, are very very bad at hiring and seeing indicators of what will make a potential employee a "good fit" (and by "good fit", I mean someone that can drive business goals, not the rampant issue I have seen of startups passing on an otherwise good candidate because they aren't a good "culture fit". Good business hiring shouldn't be a high school popularity contest).

We could all leave a lot less damage in our wake by investing some time into learning how to quickly identify good candidates.
No, why would they? Does an iphone cost less in the Congo (assuming you would buy it legally)?
>Are mobile web apps really slow?

Do you have Sprint?
My thoughts exactly. Although, there are sometimes stock purchase plans that limit the raw number that you can buy (usually at a discount from the public price).
When did 100% of 5 become 10?
Other possible reasons:

3. You didn't factor in an increased risk of sexual harassment problems

4. You didn't factor in an increased risk of getting pregnant
> My fiancé is an excellent engineer so I might have had the male dominated field bias squashed by that.

I don't understand. Are you a gay male? How does that change your perception of the male dominated field bias?
Someone who hasn't seen any comments opposed to Snowden, hasn't been reading HN. Especially-prolific names like "rayiner" (as well as others) have been all over this one. These questions aren't "dangerous", they're braindead.
In a former life, projects were paid for either from 'expense' or 'capital expenditure' buckets. Investors like expenses to be low as possible, but capital expenditure is investment in the future. Managers were always trying to creatively finagle projects in whichever bucket had some available money.
> All genders face gender discrimination.

This is true, but it should be noted that gender discrimination is fundamentally related to patriarchy and misogyny.

> For example, the country I live in is a Nordic country often hailed for equality, but the state forces all men to do slave-labour for the government.

I don't know anything about this so I can't really comment.

> Men and women face about the same amount of gender discrimination in Western nations.

I'm from the US, so I can't speak for every place, but that is most certainly not true here. Women and trans* folks are far more likely to experience sexual assault and violence compared to men and generally women face systemic issues revolving around family and work that men do not.

> Men's problems include more severe jail sentences, forced labour, lack of father's rights and so on.

In the US, its not just men that are more likely to receive jail time, but esp. black and hispanic men. There are systemic issues with racism that perpetuate this problem and this is intersectional with systemic issues with gender. All prisoners suffer from work programs that are essentially indentured servitude and forced work (not sure if that is what you were getting at).

In the US lack of "father's rights" is a red herring. Men have a high success rate in getting custody in family court when they pursue custody, however men do not pursue custody nearly as often. Also, any kind of bias or discrimination in favor of women in family court is rooted in misogyny in the first place.

> Interesting fact: majority of rape victims in USA are male.

This because the rates of rape for men overwhelmingly come from prisons and being incarcerated. Further more, this isn't really that useful of a thing to say anyway outside of the context of prisoners rights and prison abolition, as women do face high rates of sexual assault and rape and most perpetrators of rape are never convicted.
Refreshing; thanks for that.
Things are even worse in the PHP world than the languages described in the article. You get variable variables and you can use variable as the function/class names so this is totally valid:

function do($class, $action, $param, $value) {
$method = $action.$param
$obj = new $class();
$obj->$method($value);
return $obj
}

$my_name = 'Arnor';

$$my_name = do('Entity', 'set', 'Name', $my_name);

// The entity is now stored in the variable $Arnor

Thanks PHP... Don't even get me started on __call.

It's fun to come up with clever solutions and puzzles, but it harms your code base. If you're proud of how new and clever your last 10 lines were, you probably need to refactor it.
I can confirm that in Canada and US photos, age and family status are not required on a CV (unless you need security clearance), this kind of information is considered personal and could be used as a motive for discrimination.

However, this was common practice in the old days and it's still common practice in most 3rd world countries of European influence.
Cached: http://webcache.googleusercontent.com/search?q=cache:http://...

The "news" part of this is that the extension allegedly reports all the URLs you've visited to amazon, including https ones, plus some reporting of site contents to alexa.
I would expect consulting rates to be around $300/hr. IBM charges more than that (over $500/hr).
I can't claim it is my own observation. I got it from a feminist talking about how maybe the reason men are resisting women's ingress into male-dominated professions is because when women find the traditionally male workplace environment unsatisfactory, they expect the environment to change to suit them.
I don't understand, should the SEC only occaisionally enforce the laws? Would you prefer a situation where he was not prosecuted for insider trading, even though this is a crime he committed?
Yup, here's a photo of one on fire http://news.aviation-safety.net/2013/02/07/ntsb-identifies-o...
So suicidal inmates should be released from jail?

Let me know how that goes.
Filing date: November 30, 2010

A character having a plurality of attributes is created by a network user while within a character-enabled network site.

Each attribute is defined by at least one of either audio data and/or visual image data and is selected by the user from a plurality of attributes presented to the user through a user interface.

The combination of attributes defines a persona for the character. At least one of either an audio presentation and/or a visual image presentation is provided to the user interface. The presentations presented are selected from a plurality of presentations based on the character's persona.

Data related to character attributes are stored in a database. One or more of the presentations presented to the user may be interactive, in that it allows for the user to make choices.

In response to a user's interaction with the interactive presentation, additional audio presentation and/or a visual image presentation is provided to the user interface. Data indicative of user interaction with the interactive presentations is also stored in a database.

What a fucking joke.
Despite California being at will, in order to cover yourself legally, you still need to have a documented history of a persons inability to perform in order to terminate them. If you don't, you are still opening yourself up for a wrongful termination suit.
> Obviously, the English is "call girl".

So, this conversation could have happened in America, with the title switched to "call-center associate"?
Neue vs Old
Exactly. I like using the faucet analogy: when you're paying a consultant, you're getting value for the time they're "on the clock". Employees have onboarding overhead, aren't fully utilized, might require paying a recruiter, have PTO, etc.
I might avoid running an upgrade on the rest of my servers while I troubleshoot the broken one.
https://training.kalzumeus.com/newsletters/archive/services_...