skysight-inc/HackerNews huggingface dataset:
The current software is also just bad. I used to use TurboTax, but now I'm using TaxCut. TaxCut has the following issues, which are really just stupid at this point:
- Even though it could import last years return, it needs me to tell it how much of my 2012 tax refund from the state should be counted as 2013 income. I have to recalculate my last year's tax liability based on a lower deduction (because AMT may or may not erase the deduction anyway).
- It tells you that you have a slightly increased audit risk for one of about 5 different reasons, that are mutually exclusive and only one of them applies to my return.

This is the stuff that a computer can do very well, but is tedious and error-prone for me.

Moreover, the last time I used TurboTax and I'm sure this is true with TaxCut still, it wants me to decide if I want to file jointly or separately. Why in the world should I have to make that decision or do the returns twice. The software should be intelligent enough to do the calculations both ways, and present the better answer, with the option to overrule it.

If the government was making this software you could see it being this bad, but these companies are supposedly competing to do it; but it is still awful. Arguably, this is because the tax system is awful, but most of this is just coasting.

I also would expect that the state software wouldn't be very good (at least for unpopulous states), but most of my issues are with the federal return.
so you cannot articulate your differences from your competition? I'm genuinely curious to hear how you are different from existing options I have.
Deface different websites with chapters of the book? Each chapter being about a defect in crypto implementation that allowed you to deface that particular website.
Can you explain where 'light word processing' becomes 'real world processing' and therefore beyond the capabilities of a web app.

The number of use cases that can't be performed adequately (and in some cases - performed better) in a web app is shrinking and will continue to do so. The native to web app gap is shrinking, especially on non-mobile devices where memory and CPU are less constrained.
This CyanogenMod Android phone may outperform GS5, and costs $400
OnePlus's new phone runs CyanogenMod and is more powerful than a Galaxy S5, at almost half the price. A good look at the upcoming device.
It's about both!

From a programmer point of view, the ideal is a language that doesn't let you make simple mistakes like the goto fail; bug.

From an engineering point of view, it's having the processes in place to make sure that when such bugs inevitably happen, they don't end up in the final product.

The reality is having both of these things would be ideal.
I got a windows phone a while back, never switched back. I really enjoy using it.

My wife also switched after playing around with my phone. She doesn't want to switch either.

So what's it worth? Nothing. Just 4 people with different personal preferences. ;)
Wow, this page has no <html> or <body> tags, it just gets down to business with <div>. Is it a fragment meant to be included elsewhere?

Can... can the whole Web be like this?
To add, if you need/want to you can write python and perl inline in bash like so:

python3 - <<'END'
print('hello world')
END

The advantage is that you still have only one shell script to ship, which makes sense when the python code inside it is specific to that one script.

Remember to use the <<'END' variant so variable expansion isn't done inside the heredoc. On the other hand, $ doesn't do anything in python and if you're feeling like it (please make sure everybody else is also feeling like it) you can use variable substitution there, in effect generating a python script and executing it.
This isn't a class thing. At worst, it's a bad employee being a tool.
Too heavy was a common complaint lobbed at the Nokia Lumia 920 by reviewers. I personally don't mind, but a lot of people did.
It solves the nasty versioning issues that plague the other package managers like pip and rubygems.

Every package gets the correct versions for all of its dependancies at the cost of taking more hard drive space. Hard drive space is ridiculously cheap so it's a good trade off.
If true, you should publish the details. That would be completely unacceptable, generate a shitstorm, and likely get someone fired.
i very much agree, products don't tend to last as long as they do anymore, and servicing them tends to cost close to the cost of new ones..

2-3 years ago I got new sony led tv and my wife was under the impression it would be our TV for the next 10-15 years... if major components don't go out in the next 1-3 years i will be happily suprised
Yes, definitely.

You should consider all servers running a vulnerable OpenSSL installation to be compromised. You'll need to rekey all your certificates.

Do not trust the fact that "the servers are internal" because if your perimeter has been breached you will most likely know only after the fact.

Personally, I tend to treat internal services with the same process I use for external services, they just come second on the list.
It hasn't. Fringe benefits are already taxable. What they are talking about is conducting audits to enforce the existing tax code, based on information that employers and/or workers may not be paying the taxes they owe on these fringe benefits.
For me, the Chromebook killer feature is that it's not got any state: if I borrow someone else's Chromebook, or demolish my own and get a new one, everything I have is back again. I am sick and tired of having to worry about backups! They're such a headache.

I think for many users the Chromebook does fine, and I think for many others the Chromebook is too limiting. I would personally be very happy if, say, Chrome OS was built as a dual-boot solution for Microsoft Surface. Chrome for general case, and an escape hatch to Windows for games or whatever. A VM solution hosted in Windows would also work here.

However, my last attempt at running Chrome OS in a VM indicated that the open-source version of Chrome OS (at least as downloaded by VMWare) was running at a significant lag behind what's being pushed to Chromebooks right now, so I stopped investigating it any further.
I will disagree with you on your first point. One of the characteristics of specialists is that they know in practice how the software in which they specialize interacts with other software, where a generalist might not. For example, most specialists in any performance-critical software are pretty intimately familiar with the behavior of the Linux kernel when it comes to things like I/O scheduling and cache eviction, because of how it affects their program of choice. Generalists, on the contrary, rarely know any part of the system in enough depth to be able to quickly diagnose such problems. Often companies without suitable onsite expertise will reach out to specialists in these situations to resolve such problems.

I'll agree with your second point, to some extent. Generalists are rarely tied to any one technology and therefore can be very good at getting your organization to use the right tool (avoiding the common "hammer-nail" problem). However, just as frequently, I see generalists picking the wrong tool for the job, because they again aren't intimately familiar enough with the tools already at their disposal to understand all their capabilities or be able to make an informed decision about whether the gains of the new tool are worth the added complexity of introducing another layer to their stack. And, of course, nobody feels the pain of adding extra layers to the stack quite like DevOps do.

I'm not sure what to make of your third point. Isolated processes talking to each other is just a different strategy from a monolithic design. There are advantages and disadvantages to each. It's unclear to me that monolithic means "better designed," and in fact there are good security arguments to the contrary. But maybe I'm misreading what you're saying.
> And these things can be enforced by style checkers

At which point you've got a subset of the primary language, and might (if it were available and appropriate) as well be using a language that already had these good style things as language features.
That might be true for niche fields like designing. For other customary roles like software engineering at Google X. I don't think this is the norm.

Source: My co-worker sitting besides me used to work at X as an engineer.
I feel awkward having correctly guessed that the bulk of the post would be a complaint about the gender in the informal "guy." Surely there's more interesting things to complain about.
Testing Theories of American Politics: Elites, Interest Groups, Citizens [pdf]
Small businesses making false claims are pathological and completely identifiable cases by a hosting company themselves, they don't need to give the 'accused spammer' _anything_ to verify that sort of thing.

If you even want to go with the 'courtroom' analogy, accused only get the chance to 'confront' their accuser in court, they don't get a dossier on them outside of court so they can do whatever they want. You know why? Because this type of thing would happen.

This is nothing short of harassment and defamation/libel
The best way to get a system of 'due process' is for a user to successfully argue in court that their social media metadata constitutes 'valuable consideration' that turns the user's relationship with Instagram into a contractual one and then ask the court to interpret Instagram's ToS rigidly.

But this is a very steep legal hill to climb (and I'm simplifying the issues considerably, at that). It's not that I think Instagram's actions here are reasonable; it's a terrible policy in a lot of ways. But ultimately it's the consumer's choice to sign up with a service or not.
> "If you want the branch to consist of an atomic instruction, you write that instruction by itself"

No, I don't, I generally use curly braces for those too. So for me, the solution would be throwing an compile error when those are missing. Is that really all it takes to make a language "modern"?

I also don't understand the jab at semicolons, which I like, nor do I see how getting rid of brackets around the condition is really a net saving when you have to write "then" or "loop" instead. Apart from being twice as many characters to type, words distract me (much) more than symbols, and now that I think of it, I wonder how programming would be like with symbols for reserved keywords like "if" and "function", so the only text you see anywhere in your code would be quoted strings or variable/function/class names...

Anyway, I think when talking about distractions, one should be careful with claiming to speak for everybody (at least unless you did a whole lot of studying test subjects or something).
Awesome, thank you. Those of us who waste^H^H^H^H^Hspend our lives pondering these things need to stick together. Cheers.
I see where the GP parent is going with this, but honestly I'd be much more concerned with the immediate effects of corruption and favoritism in the legal system than the social media sphere.
SigmaVPN: Stateless OpenVPN Replacement Using NaCl Encryption Library
No idea. That's one thick, heavy wall they've got there.
GlaxoSmithKline Investigated for Bribing Doctors
Since he lumps in Java with C and C++ it's worth pointing out that this specific bug is not possible in Java since unreachable code is a compiler error. I assume the same for C#.

Also, many style guides such as Josh Bloch's highly influential 'Effective Java' recommend against the 2-line if statement without curly braces since it's known to be prone to this type of error. His argument that keywords are better than braces for ending blocks is weak.
Says the guy with a three letter handle...

We should just name out children random hash strings.
A short time ago in the information critical real world someone was quietly exploiting the bug that would become CVE-2014-0160 (heartbleed). Today your iphone uses really bad software [0]. Today it is easy to be a critic. As for Tp*'s professionalism, can you figure out if he wants the world to improve or stay the same?

[0] http://www.osnews.com/story/27416/The_second_operating_syste...
Count me in, most of the meetups are in DC at crazy hours (like 5 to 7) which makes it impossible to attend if you're coming from NOVA (i66 is terrible at rush hour).

I was also planning on starting a security meetup in NOVA around Fairfax or Reston in case someone is interested in security.
Thanks for the info on rcron, it sounds like a really useful tool. I think I prefer the approach of rcron wrapping minicron so it doesn't require added complexity to minicron. I've added an issue here for potentially doing this https://github.com/jamesrwhite/minicron/issues/66 if you want to follow along with the progress.

The fronted is actually all API based, in theory I don't see any reason why external apps couldn't use the API. I'll try and add some documentation for it. I quite like the idea of puppet/chef/whatever defined jobs. When I add permission support to the hub/api you could set up a user for puppet which would have its own API credentials so the API would be able to show who the job was created by. On of the features of the permissions system will most likely be that users can only edit jobs they created unless they are an admin or some kind of user with extra privileges. I think this feature would be useful for a lot of people so hopefully it can be added without forking the project!

Logging activity and some kind of revision control is definitely something I've thought about and plan to add in the future. I remember seeing a ruby gem a little while back that could basically track changes to arbitrary ActiveRecord models, that might be useful here. I've added two tickets for this to remind me! https://github.com/jamesrwhite/minicron/issues/67 + https://github.com/jamesrwhite/minicron/issues/68
This looks super cool. Submitted it in hopes of hearing more discussion on it. https://news.ycombinator.com/item?id=7599091 What's its security track record? Have you ever used this? The idea looks nice.
Try moving all bash code into functions leaving only global variable/constant definitions and a call to “main” at the top-level.

One of my main complaints with bash.. the file is evaluated in order - you can't call a function on the line before it's declared.

This fails:

#!/usr/bin/env bash
bar='bar'
foofunction

foofunction(){
echo 'foo'
echo $bar
}

Basically you have to write your entire script in reverse, and i'm unaware of a good way to get around it.
Mangaement:Quick accounting! This is a huge deal for IRS this year I read about it in the WSJ. Get this, they are going to start taxing employees for the gourmet meals. Don't give me that look - Of course ... we ... will ... reimburse our employees for this.

Accountant: So... for every employee we need to do an infinite sum series for a given taxable income based on the fair value of how much they have eaten...

Management: Ewwph. Huh?

Accountant: We don't even track this yet...

Management: We'll take what we pay on food and divide by the employees

Accountant: This would create a tragedy of the commons scenario that will destroy morale...

Management: Ewwph... how... we weigh each employee before and after they enter and exit the building AND restroom and find their weight differential. Then we apply that to a $/weight_delta factor to get their taxable income!!

Accountant: No ... Fuck no.

Management: Then how about we make employees pay for their meals and then reimburse afterwards like we do with our expense reports! So simple - literally just thought of that.

Accountant: Most sensical thing you said today, but accounting would collapse under the weight of all of those expense reports.

Management: Spoil sport. No more free lunches.
While it is true that fundamental weaknesses in cryptographic theory may be discovered at any time, the implementation of cryptosystems is, I would assert, still very much like engineering. Broken theory is distinct from broken implementation, although broken theory does end up breaking implementations as well.

Maybe some mathematician will prove AES is broken tomorrow. In terms of the analogy, I don't care. The most qualified, fastidious engineer building the most correct implementation of AES is going to have an insecure system on their hands at the end of the day if that's true, and there is nothing we can do about that on the implementation side.

This is distinct from some programmer reading "Learn Crypto in 24 Hours", building a bad implementation of an otherwise secure cryptosystem due to inexperience or carelessness, and then screwing people over because that bad cryptosystem goes into production code.
Online Bike Shop
>pedagogy tries to find the optimal conditions for humans to develop their true self

"True self" is not a real thing - it's mystical psychobabble. In reality you are a product of your genetics and experiences, the ratios of which are still contested, however as of now the latter is much easier to influence than the former and as a result is really the only medium we have to work with if we want to influence outcomes.
To me, it seems like it makes sense that a great developer should absolutely know how his code is running, how his changes interact with the production environment in which the code runs, etc.
Kyle from Webflow here. Are you on the latest version of Firefox (28.0)? The scrolling animations are working for us.
Mobile Tax Apps are Weak On Security and Privacy
Building the Internet of “Thing” at FTF2014
There's nothing wrong with vanity tags. Similar to 'verified' accounts.

And if you're referencing me from your phone, you could alias me as @knowsnothing and change my icon to a koala if you wanted to. That offends me less than me having to come up with @awesome_sauce314 to use some photo sharing service, which I'd need to share among friends, coworkers, family, strangers, etc.
Style checkers should be exactly that: tools that check code for correct style. If you have "stylistic" choices that are so important that you disallow their usage altogether because they might lead to critical bugs, then what you're really saying is that the language design is broken.

In fact, you're saying that you think that certain parts of the language design are so broken you'd rather work with a subset of the language that doesn't include those features rather than risk having them be misused. This very much puts the choice of language in question.
And this is why DevOps has gained traction. Automated deployments, continuous integration, and software that functions identically whether in development env or production.

You can wax poetic about how it used to be, or complain about people being overworked all you want, but that's an issue of expectations. Personally I never want to go back to two week "integration" processes and multi-day manual deployments.

DevOps to me is an exercise in not making things more complciated than they have to be on the config/deploy side.
On the surface, this reasoning makes sense. Unfortunately, human coders are the ones writing code. This means the code might have bugs in it, regardless of the language you choose. While it would be great to invent a new language n+1 whenever the blame for bad code can be directed at programming language n, it is not likely that you will find coders that are willing to repeatedly take that ride.
That definition is gradually encompassing more and more 'work users.' There are a lot of jobs were the corporate 'killer apps' are web apps, even in the "knowledge worker" space.

For these, a remaining reason to buy windows is "what if I need x." WIndows does everything chromes does, plus some other stuff so its alway going to win that argument. Office online is another step to making that argument moot.

I'm not sure that Google is actively targeting workplaces with chrome, but I wouldn't be surprised to some workplace shift.

ATM, I think there are a lot of users that use 80% web, 10% native apps with decent web based alternatives and 10% irreplaceable native. Since IT departments know what's installed on machines, they'll know for sure if/when a switch is possible.
Looks like it's been built by someone who never did any metal or wood work before. A fresh university graduate?
Google: We scan all Gmail messages
I have "product guy" in my profile :) so just a counter-point:

> Working on "Product" could mean you’re a PM, a designer, an engineer, or a bunch of other things I’m probably forgetting right now.

All of this is exactly what I did when I started my company, so I'm not sure how else to convey what it is I'm actually good at. Now, I was not the best at any of these, and we subsequently hired people who are to replace me in all of those roles, but for many months I had end-to-end responsibility for our product: the feature-set, design, engineering, QA, etc.

I do think that being a "jack of all trades, master of none" is a unique skill set as well. For example, I'm not a good designer, but I was good enough to build a decent looking MVP, and also to identify and hire a designer who is actually great. Same goes for engineering, QA, etc.

And the "guy vs. gal" thing... well, "product person" just sounds awkward, and "jack of all trades" sounds arrogant, so I'm not sure what else to use.
How about forbidding newlines in a single-statement if and requiring a newline after the first statement after the if?

So this is allowed:

if (foo) bar();
baz()

But this isn't:

if (foo) bar(); baz()

And this isn't:

if (foo)
bar();
baz()

Edit: formatting
Yes! It's about creating systems to reduce defects.

Processes are systems; language and its constructs are systems. Both may contain methods to control variation and improve quality.

The point is to control variation. Nothing more. Any complete system that connects what we intend, with we tell the computer to do, with what the computer actually does, is good. We need to move in that direction.

Blaming an individual is pointless. Never was there a more consistent or uncontrollable source of variation than the human. We need to surround ourselves with systems that enforce quality, and that do not let us choose to introduce defects.

For this to take place, we have to first and foremost understand that this is the goal. That quality comes from the system and not the individual. Until then we will see only human error translated to computer error continually and unstoppably.

http://en.wikipedia.org/wiki/W._Edwards_Deming had it.
Typed a whole long comment about the relevant section of Cryptography Engineering, but it seems you already read it :) I'd also be interested in an in-depth study of GC's effect on secret material.
In C# if this were nested between two Catch blocks (for handling different types of exceptions, per this example) then it would throw a compiler error.

If it were a switch statement, you'd get a warning for code that will never be executed.
Kendo UI Core – The Free jQuery Widget Library
Remittance fees hurt Africans
FWIW, neither of those accounts are the original @kathleen.
heh. you guy really have any hope? just count the number of devices google and its nexus partners released without even a sd card slot! motorola too since the google devices started.

the market demands that fast obsolency and they are evil now. the only thing holding back the nexus one as a strong daily phone is that it have no space for more than 5 modern apps. it does if you hack android 2.3 to install apps on the SD...

anyway. i wouldnt hold my breath. this is being done just to fail and harm other people pursuing it honestly. cynic much? probably. but i am mostly stating facts. how much does a sd slot saved in costs from your $600 phone? nothing. hiw many years its lack cut from the device longevity? more than half.

edit: plus the feature they advertise more is electro magnets! on a device where the biggest concern is battery... and which will have a case anyway that could hold everything together in case they used simple mechanical latches.
I believe it is a warning in C# (have not used it in a while).