HNHacker News
TopNewBestAskShowJobs

px1999

484 karma · joined April 13, 2012

submissionscomments
px1999··on How to Drink All Night Without Getting Drunk
Make no mistake, this is one of those "one weird tip" articles.

It doesn't surprise me that the tip doesn't appear to work (based on the links others have posted), because the article is really a (hopefully viral) marketing vehicle for Sam Adams - in a couple of short paragraphs, they touch on their glass, their new IPA, their social programs, their new Belgian quadruple, and some of their existing line.

It finishes up with some "secret", broadly dismisses established science (by stating that companies didn't pick up Prequel just because they didn't want some liability that they wouldn't have been liable for anyways), offers no real

What makes it interesting is that this article seems to resound with the more technical people that I know. It's like linkbait for smart people...

px1999··on AngularJS 1.3 released, discontinues support for Internet Explorer 8
Am I missing something? This is a post from Dec 2013. 1.2.14 still looks to be the current version of Angular. There was a commit today on Angular's GH removing IE8 from their test configuration which implies that 1.3 is going to be around really soon, but there doesn't seem to be a release build at this stage.

TL;DR: wrong title?

px1999··on Why Most Unit Testing is Waste [pdf]
Mocks are useful for providing state where it's queried from external objects. They are also great to verify that the intended external side effects of an action occur. verify isn't / unit tests aren't the right mechanism for forcing a particular implementation (which is what your example test does - why do you care if getHour is called, it doesn't update state in another part of the system?) Your tests should almost never never say "this method on this mock will be called X number of times with this result", unless it's something that you actually care about (in which case it should be the entire subject of the test).

The above test is much easier without mocks. You construct a date, pass it in, then check that the result is equal to the input plus 10 days. That's all you care about, so that's all you test.

Verify is useful if you have to update external state. If, in your contrived example, for whatever reason, you needed to keep a tally of all of the times that due dates were ever calculated and that was stored somewhere else, you might have a test that mocks your CalculationCounterClass and verifies that a method (addCalculatedDueDate or whatever) gets called on there...

Good, simple (and IMO brittle) tests that confirm what you care about are useful. Forcing a particular implementation through your tests is a drain.

px1999··on Ask HN: Why do people trust Bitcoin to third parties?
I'd wager that many of the people who had their money stolen (particularly at gox) aren't what you'd describe as "bitcoin enthusiasts". Less-technical people who have either heard about bitcoin, or who have been gifted some bitcoin are likely going to keep it in whatever service they received it on (many may not even have realised the difference between mtgoxbtc and btc).

There's enough FUD out there to scare people who do a little bit of research away from storing the coins in their own wallet - brainwallet passwords being cracked and accounts emptied, viruses taking your wallet.dat, over-paranoid key-generation techniques recommended by the community.

Living in the HN//./reddit/whatever else bubble, there's a prevailing attitude that users should be aware of the goings-on in the bitcoin world. We're definitely exposed to those details here. As a result, the reaction seems to be to almost blame the users for the exchange losing their money (to paraphrase, "why would anyone in their right mind trust Mt Gox?"). Personally, I think that this attitude is bullshit, and that technically competent bitcoiners are taking advantage of less-technical people with the rhetoric around how much of a great payment system bitcoin is/how it's a great investment/etc while glossing over the fact that if you aren't good with computers (and want to trust domain experts, or who don't know how to properly secure their own computer), you will be robbed of your money one way or another.

That said, perhaps the best answer to your original set of questions is convenience...

px1999··on Have I been pwned? Check if your email has been compromised in a data breach
Interesting and good idea. I had a couple of accounts in the Adobe breach, though I don't think I got an email from them (maybe it was spamfiltered or I changed my passwords before they sent those mails out), but I wish that there was some sort of long term service for responsible disclosure of breached accounts - eg you sign up, they make you verify your account, then they list and contact you whenever your email appears in some password list. If this one didn't show anyone my email addresses' status, and there was the ability to mark individual hacks as resolved this would fit the bill
px1999··on Microsoft Throws its Weight Behind Ghost
Aah, I didn't see that in the article - I can find a kickstarter post referencing them as a partner, but didn't find anything talking about a 50k figure.

I guess that figure does represent a significant investment (their contributions to other CMSes aside), particularly at the current early stage of Ghost's development.

px1999··on Ask HN: What is the best technology to learn right now?
No, this is HN, they're not supposed to get any love here.

I'd suggest .NET/C# myself. It doesn't have the new flavour of the month feel, but there are some interesting things happening, and it's a solid platform with a bunch of serious, good choices for developing websites and applications. Also, nice documentation and an excellent toolchain. The downside of course is cost...

That said, language/environment etc all should come down to what the OP is trying to achieve - there are a lot of things that there are better alternatives for, but for general purpose webstuff, it's usually a solid choice...

px1999··on Microsoft Throws its Weight Behind Ghost
TL;DR: a small team at Microsoft (modern.ie) have a site old-ie compatibility scanner that they've written in node and want to integrate into a CMS. This probably isn't a larger strategy or play at Microsoft. It might be a sign of internal change among developers there, which might change their business strategy at some point in the future, but they're definitely don't seem to be "throwing their weight around" just yet.

They already have far larger investments in plenty of other CMSes:

* Sharepoint (the goose that lays the golden eggs),

* Umbraco (which IIRC runs asp.net, iis.net, windowsazure.com, and possibly [parts of] technet and msdn),

* Orchard (which is theirs, albeit through the OuterCurve foundation, which is one of MS' OSS outreaches),

* MCMS (which is horribly old & expensive, but still out there and in use),

* A bunch of internal CMSes, and other stuff that they developed themselves to tie in with backend systems (eg CRM)

Hell, they did more with Oxite before abandoning that than they're planning with Ghost.

Maybe MS as a company want to get more into node, but that doesn't really seem in line with their larger strategy (even though they definitely are starting to embrace OSS more, particularly on the web teams) - so it's probably just likely that one team wanted somewhere that they could test out the library they've written.

px1999··on NSA finds Snowden hijacked officials’ logins
Not intending to be terse, but:

1+2) You could catch a decent portion of this type of behaviour with a tiny fraction of the effort. Logging local activity on individual user desktops is a waste of time, for example. Raising the difficulty of doing things undetected raises the bar significantly, particularly if users don't know exactly what's going to trip an alarm somewhere and get them caught.

3+4) Considering the nature of their work, I'd expect the NSA to be the right people for this with existing processes, suitable personnel and the storage/processing power required. It's their job to intercept and analyse large quantities of network traffic.

5) There was a period of around a year end-to-end in Snowden's case, and was in contact with The Guardian months before leaving the US (http://www.reuters.com/article/2013/08/15/us-usa-security-sn...).

Yes, it's a difficult problem (and impossible to comprehensively solve, doubly so when you don't trust administrator-level users), but when you're dealing with classified information in government, security is more important than in a regular commercial context.

If anything, the lack of decent internal auditing at the NSA is probably intentional.

px1999··on The joy and pain of using a static site generator for private and client work
Wow, this describes something quite close to something that I'm working on (and covers a number of problems that we've faced).

That said, all of the issues listed, while intractable, aren't impossible to deal with. CORS is just one way of handing things like forms submissions. Site regeneration can be done transparently from a centralised always-on server. There's no reason oldschool IE can't be made to work.

Indeed unfortunately the author's solution seems to miss a bunch of the benefits of having things static.

There's a lot of value in not doing work (or minimizing the amount of work done) when people come to read your page, and I'm honestly pretty surprised that there aren't more intelligent baked site generators out there.

px1999··on Facebook will disappear in three years
I'll be honest, a couple of years ago, I believed something similar, but for different reasons:

* Friendships change over time, no social network (Facebook included) could crack that.

* "The youth" don't want to be on the same social network as their parents.

* Timeline spam from games was going to kill the network.

* People were uber concerned about privacy and would flock to a more privacy-aware alternative, particularly with employers starting to check up on employees.

* Someone was bound to go and take away Facebook's golden goose - image hosting.

* Mobile monetization was going to be a massive problem for them.

I had other reasons, but I was young(er) and naive(r). They dealt with those threats - by introducing features, having critical mass, changing their partnerships, reassuring users, opening their wallet, and figuring out how to do mobile well respectively.

Yes, free (as in GNU) software is always a threat to people trying to profit from software, but it's no more serious to Facebook in the medium term than any of the above. People are lazy, there's a lot of inertia behind Facebook at this stage, and setting up your own social network-type stuff on your own server is (and always will be) seen as "too hard" for most people.

I highly doubt that they'll be unseated for quite a while (even under the glacially crushing weight of OSS) so long as they keep making the good calls that they've been making over the past few years.

px1999··on New NSFW content restrictions enrage Tumblr users
Sounds like a good opportunity for a third-party (robots.txt ignoring) tumblr indexer.

That said, yahoo's probably trying to remove NSFW content to fill the ad spots that they're invariably planning on throwing down everywhere, so I'm not sure how well an indexer would do on its own.

px1999··on Keep coding. Punchy Prose will handle copywriting and editing for you.
Thanks for the response - I'm running into similar issues with a product that I'm building, and my planned approach pretty much mirrors yours, so the validation is very useful.
px1999··on Keep coding. Punchy Prose will handle copywriting and editing for you.
This is a service that IMO is sorely needed for those who don't have the budget to hire an advertising company (who'd tend to get their interns to write copy for you, and at more than $175 for a landing page). That said, I'm a little hazy on what classified as a "landing page". I could see that one size fits all pricing coming back to bite you, as not all clients will have an equal opinion on what's a reasonable amount of copy, but I'm assuming that it's a calculated risk that you're taking there.

I could see it being quite a difficult service to get off the ground. The barrier to entry may be (comparatively) low, but I couldn't imagine clients being happy with you taking credit for the copy that they buy even on your own site - do you have a strategy to handle this and get people talking about the service you offer, or are you planning on relying on banner/text ads to bring in new clients (or is it something that's not entirely sorted out yet)?

Either way, all the best, and good luck, I hope it works out for you.

px1999··on Capacitor plague
In 2006(ish?), I worked for a subcontractor doing hardware swaps on Dell machines, and these capacitors single handedly accounted for maybe half of all repairs that we had to do during the time (and that's against even trivial and common stuff like laptop keyboards breaking). It really doesn't surprise me that it cost Dell $400M+ to fix these systems - it had the sort of impact that could definitely destroy smaller companies outright.
px1999··on Where Is .Net Headed?
I don't know if I agree with this. I've worked on large MVC applications for government, they definitely exist. MVC is IMO a simpler (and more consistent?) beast than aspnet, and in my experience doesn't have the same lazy legacy/dinosaur developers, so there's a smaller volume of questions for the number of lines of code written.

.NET vs Ruby is a whole holy war which I'm not going to get into, but there are a lot of people out there who like to get shit done, and find that .NET (and MVC) works just fine (great even) for that.

px1999··on The Crucial/Micron M500 Review – 960GB SSD for $600
It's probably mainly targeted towards servers but there's a healthy market for it among consumers. After all, there are a lot of people out there with specific needs or wants that call for storage - it may be a 'niche' product at the moment, but even now the niche is pretty big (even 1% of a ton of people is a ton of people).

My personal (developer machine) calls for around 400gb for VMs and databases. Useful install media (which, sure, is largely optional) adds another ~30gb. If I want a few games on the machine, that's an extra ~20gb. Already, that's around 450gb of space used, and that's being pretty space conscious.

Huge drives like this provide convenience. If I want to back things up locally (full VM snapshots, database backups), there's enough space to do that without having to worry / shuffle things off to a NAS (which may or may not be an option if it's a laptop and you're on the road), and HDDs don't cut it performance-wise.

px1999··on Bitcoin exchange rate reached $100 USD per BTC
For general (ie not Scribophile info)...

http://www.reddit.com/r/Bitcoin/comments/19t3uq/hey_rbitcoin... is the best that I could find (admin from Reddit talking about Reddit Gold revenue).

It's interesting that the accounting costs more than they bring in (though this is something that could obviously change with increased stability in the BTC/USD rate / increased volume / better processes). Somewhat concerning, considering that they host what seems to be one of the most active/vocal bitcoin communities out there.

Also, http://www.reddit.com/r/Bitcoin/comments/1auzjg/factorio_dev..., though this one may just be a case of not properly targeting for users.

px1999··on Google to customer: Go fuck yourself. In the cloud.
Sounds like he needs to get himself an SPF DNS record (assuming his email is at the linked domain).

Yes, his situation sucks, and it's also bad that seemingly no-one at Google cares (though as was mentioned in the comments there, they do have phone + email support for paying apps customers). It doesn't really sound like Google's fault or problem, because raising whatever limit they have on his account won't fix a problem with someone presumably using his misconfigured domain to send spam, triggering the limit in the first place.

Of course, that doesn't change the fact that Google really doesn't seem to value customer service.

px1999··on AngularStrap - Bootstrap directives for AngularJS
Definitely similar problems, but in a somewhat different way. This library looks more featured than Angular UI Bootstrap, though in mostly small ways.

The popovers allowing external templates and custom scopes is one example, and the inclusion of navbars, date and time pickers instead of pagination, accordions and carousels is another.

If it works, I'd say I like it more than Angular UI's version, which is probably simpler to get up and running but something that you'd run into the limits of more quickly.

px1999··on Flat UI, mirrored
It's there to deter fake counternotices by giving the original issuer time to seek an injunction / file a lawsuit I think.
px1999··on The Coinbase Android App Has Launched
Call me naive and oldschool, but this is my biggest issue with bitcoin - essentially all of the coverage comes from people/groups of people with (what are now) large investments / conflicts of interest in bitcoin, so any negative (or objective) coverage is glossed over.

There don't seem to be (m)any experts looking at bitcoin either (maybe I just haven't looked) and so broader problems with the whole system aren't being raised or addressed, all of the writing and analysis that is out there seems amateurish. It's no surprise to me that aside from some minor trolling, there's no-one writing about the crash.

px1999··on The Rich See a Different Internet Than the Poor -- Scientific American
Adwords has advertised private jet leasing in the past. The fact that they appeared in my google apps indicates that the technology isn't as scary / all knowing as the article tries to lead readers to believe.

It touches on but IMO fails to explore a bunch of legitimately interesting topics - the sociological effects of filter bubbles, the ethics/legality of digital 'redlining' (and how Google just picked up a patent for it no less), formation of digital class divides as well as others.

It's a post that would have benefited from a less hyperbolic title, and posting on eg a blog where it wouldn't be completely destroyed by editing. I'm not sure who the 1% are supposed to be (advertisers, I guess?) and fluff aside, the article doesn't really have much meat in its current form.

Also, wtf with having a second page containing 15 words that on their own read like a drunken friday night text message and don't really tie in as a conclusion?

px1999··on Xbox 720 to use always-on DRM?
Completely unsourced FUD, and probably the result of some guy just fucking around and sending some "journalist" an anonymous email ala http://x-surface.tumblr.com/post/41282771026/x-surface-dont-.... if there was any source at all.
px1999··on EC2's M3 Instances Go Global; Reduced EC2 Charges and Lower Bandwidth Prices
Amazon's not amazing at announcing useful timelines for their products/services. There are presumably a bunch of internal factors at play, but spending limits aren't the only thing that's been "in the works" for ages. If you're holding out for something that may or may not be coming (eg DevPay in your region, hard spending limits, long-term-queues, scheduling, ability to cloudfront s3 'subfolders' etc) it's frustrating, but on the other hand, they do tend to release well thought out services that make sense.

If it's any consolation, I have heard of individuals getting huge bills and having them cleared by Amazon when it became apparent that they hadn't willingly racked up that many fees (like the guy who included his S3 images in a google spreadsheet causing several TB of requests - http://www.behind-the-enemy-lines.com/2012/04/google-attack-... ).

px1999··on Ask HN: Am I being too hard on the developers I interview?
I'm working from random statistics for London that I found on the internet, so please forgive me if this doesn't apply.

You seem to be paying average - average+10k (for all, not just senior) developer salaries, yet you specify senior programmer. At this level, you're only going to be attracting mid-level talent. There could a problem with your recruitment targeting, which could mean you're not getting ideal people in the door to begin with.

At the mid-level, you should expect a high failure rate on simple tasks. You're dealing with people who wound up on the job market after getting a bunch of experience. This means that a lot of them were fired, came from untenable/poorly managed companies which went under/downsized, or were working under such unbearable conditions that they quit. Employed devs trade up - unless your pay packet, benefits or feel-good factor (eg if you're an NGO, charity, working on 'real' problems, etc) give your company an edge, you're not dragging people away from jobs where they're encouraged to develop their skills, work under good conditions and understand software engineering processes. Job postings regularly ask for ridiculous and irrelevent things, so a lot of the employed devs who read your job ad and apply will not meet the criteria you specify. I know it's a huge generalisation, but the best devs are usually only on the market a couple of times in their lives, and they're quickly snapped up by companies at a premium and kept happy with various incentives. Tl;dr: you should be prepared for most candidates that you interview to not be appropriate for the job you've posted.

Thirdly, there's a problem with your, ahem, problem. It's not a great problem, imo because there's a fair amount of nuance to it. I'd want to shine by giving a good solution - vaguely remembering that a value in Pascal's triangle can be derived from combinations or permutations or something similar I'd spend some time trying to figure out if there's some algorithm "n!/(n+k)! - no, that's not it...", then I'd try to do it in-place calculating only half of the triangle, and then probably wind up using two rows of half length to calculate the numbers there. I'd be trying to impress you by coming up with a solution with more useful properties (memory boundedness, complexity, speed) than "returns the row of pascal's triangle". You're probably not even hiring people for their comp sci experience.

Maybe you just wanted to vent, or to advertise here - that's ok, but keep in mind that you're going to have to quickly reject unsuitable candidates and quickly pick up suitable ones, that it's just a numbers game, and that this is why most companies that offer mid-range compensation are "always hiring". The problem isn't too hard as such, it's perhaps a little undirected. Also, some people just interview terribly.

Dunno, just some food for thought.

px1999··on Dependency Injection is a Virtue
All of the 'fashions' in the list are alive and well, in one form or another and (usually) helping someone. While the dogma eventually does wear off, there's almost always something that can be taken away from each of the approaches.

The religion aspect stems from individuals and organisations finding that a certain approach works really well in one case and thinking that blindly applying the same techniques will result in the same good outcome in all cases in the future. This is worsened by managers (+developers) wanting to make software creation/maintenance more predictable and less ad-hoc (I mean, just look at how the average civil engineer approaches large projects to see how chaotic/immature most software development processes are - this is the case for pretty much every professional occupation except software). There are obvious constraints that make software difficult, but it's this search for something better that gives these fashions, and it's IMO really only the shortsighted or foolish that wake up one day and decide to apply only one of the approaches across the board on all of the lines of all of their applications.

It's all about having a light touch - there's nothing wrong with structured programming, OO, patterns, functional programming, TDD, IoC, etc. because they're really only tools that come in handy sometimes. You don't need to worship the ideals at all times, just use them when they're convenient or beneficial.

px1999··on Google Apps Moving Onto Microsoft’s Business Turf
Google's business models are at-ends with one another. Are they an ad company? Are they a free/low-end provider who can get away with killing popular services when they no longer benefit them? Are they a serious provider of business services?

They can get away with one, maybe two of these. I'd be happy to pay a bunch more for Google apps if they had a more serious SLA/they gave more confidence that the services aren't going to change, and if they offered business features to match the price.

px1999··on Tweet a hash and this bot will crack it for you.
Seems to be powered by crackstation. Main difference is that it tweets your twitter handle and password if it finds them.
px1999··on You’re not anonymous. I know your name, email, and company.
Read the article, thought that it was something interesting but probably not that applicable to me because I clear cookies on (frequent) browser close, don't enter my details into many sketchy sites, use multiple different (isolated) instances of my browser for different purposes.

Today, I get an email from a site that I visited yesterday and haven't heard from in 6+ months. It's too much of a coincidence for me to assume it's random so I dig into their website a little and they're using one of these services.

TL;DR: even though I'm relatively paranoid with giving out details online, one of these networks seems to have successfully identified me and provided my email to a website that I visited, who then reached out and tried to sell me shit.

← PreviousPage 6 of 8Next →