HNHacker News
TopNewBestAskShowJobs

leepowers

787 karma · joined January 8, 2013

http://leepowers.co
submissionscomments
leepowers··on The Singularity Is Further Than It Appears (2015)
> It’s wrong because most real-world problems don’t scale linearly. In the real world, the interesting problems are much much harder than that.

And this is what has been nagging me about the Singularity and its associated predictions. Exponential growth in our problem-solving capabilities is explosive when the problem-space is linear. But what happens when the problem-space itself grows exponentially with each iteration? Then we're back to linear progress.

Futurism, thinking about the future of AI and technology is still important. Long-term thinking, planning, and prediction are always good. But progress will probably be much slower than anticipated.

leepowers··on Dear JavaScript
> Babel6 transition took three days of my life, filled it with misery and rage, lost me a customer,

No it didn't. Technical issues arise all the time, in all manner of projects, and are fixed all the time without losing business. _You_ lost the customer because either a) you didn't properly communicate the technical problems being resolved, and/or b) did a major version deploy without verifying and testing beforehand. Stop projecting your failures as a developer on someone else.

Open source software is powerful and comes with no guarantee - we are all provided with enough rope to hang ourselves. This freedom is what enables us to build really cool stuff. But it also means we're all responsible for using it correctly in our particular project contexts.

leepowers··on Nielsen estimates ESPN lost 555,000 subscribers during the last month
There's only two good things that ESPN broadcasts:

* Live Sports * "30 for 30" documentaries

Aside from these it's mostly noise - sports commentary and sports news. Which, not incidentally, are the cheapest forms of programming on the channel. Quality programming will almost always find an audience in the Internet era. ESPN has a lot of low-quality filler that viewers simply don't want to pay for.

leepowers··on Trump Campaign Built an Identity Database and with Facebook Ads Won the Election
Just to clarify, the Trump campaign purchased large databases of user info from Experian, Epsilon, and other large data brokers in an attempt to target potential voters for negative ads. You can opt out of these databases, though I don't know how effective this is, as there is no requirement in law to offer opt-out:

http://www.stopdatamining.me/opt-out-list/

On another note: the article doesn't discuss any digital initiatives by the Clinton campaign. Given her advantage in fundraising, Clinton undoubtedly had a comparably large digital initiative that campaigned negatively against Trump. Without examining the whole ecosystem it's inaccurate to declare that Trump won because of digital. Both campaign's efforts may have more or less offset each other.

leepowers··on Are videos really the best tool for the job of educating coders?
Video can be great for describing certain concepts. Like illustrating the relationship between pi and a co/sine wave. Or anything related to animation, physics, etc. in code.

Video can also be useful for learning how to setup a development environment, to show how to use developer tools in FF/Webkit, setup an Xcode project, etc. Instances where a student needs to navigate a complex UI to begin the work of actually coding.

For coding there's many problems with video. One issue is bandwidth: text can be scanned and consumed very quickly. Text can be given a hierarchical structure that a student can jump between, which makes it easier to understand complex relationships between concepts. Video is linear. Code is not. Code has a relational and web-like structure that is more accurately represented by hypertext.

leepowers··on You Are Not Paid to Write Code
> Nobody pays for a lump of code, they pay for a tool that solves a problem they have.

Of course they're paying for code. They're paying for code that does something useful, and which may or may not produce value for their business. You can't separate the two.

leepowers··on You Are Not Paid to Write Code
> Obviously you do write code in the course of providing those results

Well, then you _are_ being paid to write code. We can yammer on all day about how we're adding value, but the programming skill and talent has to be there first. So you're both being paid for the value of your skills (being able to code proficiently and efficiently) _and_ for increasing the equity or profit of the business.

An analogy might help. When I pay a contractor to add improvements to my house my goals is to increase my home equity. So I am paying for value. But I'm also paying for his skill. Because if I get an unskilled contractor I might end up underwater. An unskilled contractor can cause me to go backwards, where the cost of fixing his bad work costs more than the equity boost. The same dynamic applies for bad programmers. Skill is the primary driver that causes any increase in value.

> but they are the minimum code required to deliver results.

We're not looking for the minimum amount code, but the best solution. Writing tests will add overhead to your code. At a minimum you could leave them out. But the benefits of rigorous testing can justify the investment of time.

leepowers··on Uikit – A lightweight and modular front-end framework
I'll probably skip on UiKit. In a cursory, five-minute tryout of various components I found three errors (using latest Chrome on OSX, version 54.0.2840.98).

Here's a description of the problems I found: http://imgur.com/a/XSo5T

The point here isn't to nitpick. But I've found three problems after the most basic review. That doesn't give me much confidence in quality of the codebase. If I commit to using this in a large project, spending 40+ hours with UiKit, how many more problems will I find? (And, ultimately have to fix).

leepowers··on Donald Trump’s Contract with the American Voter [pdf]
> but how are we realistically going to pay down the national debt when we enact a massive tax cut on top of a tax rate that is already at historically low levels?

Here's a hint: we're not going to pay down the debt anytime soon. I would expect the debt to increase by $8-$12 trillion over the next decade if Trump gets all the tax cuts and programs in his agenda.

The electorate hates taxes. At the same time it loves government spending. There is no political will to cut spending in any meaningful way. The last Republican vice president declared that "Reagan proved that deficits don't matter" - a line that Trump has echoed.

leepowers··on LessPass: sync-less open source password manager
Aside from the security concerns already noted I have two major questions:

1) How do I change my master password? It appears that all generated passwords would change as well. Even master passwords should be expirable and changeable.

2) I don't just use a password manager to manage passwords. I use it to manage _credentials_. I have a ton of credentials, so I need something that will remember the _usernames_ for me as well. Otherwise I don't just have to memorize the master password - I also have to memorize the usernames for the hundreds of different logins I'm managing. That's a non-starter.

leepowers··on Ask HN: Will you really move away from Apple hardware?
I would choose the new MBP. Mostly to try out the Touch Bar. I'm intrigued by the possibilities of a context-specific, programmable function key area. Will it be useful? Will it be an annoyance?

Different users have different goals and pain points. More than anything I want a computer that fades into the background. I want to get work done using computer. I don't want to work on the computer itself. I don't want to tinker with esoteric configurations in Ubuntu. Or troubleshoot OEM driver issues in Windows (or wait for Windows to install updates on boot).

My experience with MBP over the past five years has been seamless.

leepowers··on Hourly Billing is Nuts
> What if by being a better developer, using the proper technology you can do the project in half the time it would take other companies?

In my experience it's rarely a technical challenges that negatively impact project timelines. Usually it's changes and revisions coming from the client side (though all parties can and should submit changes). The randomness (and hence risk) in a project doesn't come from the initial scope agreed upon. It comes from the fact that people are dynamic, and the act of building software is dynamic. A feature that appears complete at origin will almost always accrue changes, tweaks, and revisions.

These dynamics are difficult to map to a fixed cost project.

Additionally, as a worker, you are always measured by hourly rate, whether or not you charge by the hour. A $5000 project that takes 500 hours to complete values developer time at $10/hr. If you can get the job done in 50 hours, the labor is worth $100/hr. Your technical acumen is not the sole determinant of this time variance, instead it depends on the behavior and temperament of all the project stakeholders.

leepowers··on Obscurity Is a Valid Security Layer
Obscurity, Avoidance, Hardening seem to be useful ways to explore the idea of attack surface and related security concepts.

Reducing surface area refers to ways to increase the overall security of a system by restricting the set of features accessible to user groups. Every feature is an attack vector. So limiting access reduces the total number of possible attackers. Surface area is related strongly to the concepts of Obscurity and Avoidance.

The other thing to consider is the total risk and any associated costs/tradeoffs.

In terms of SSH, changing the port number changes the set of attackers from A) attackers scanning standard ports across many hosts, to B) attackers deep port scanning fewer hosts. The relative risk will decrease if group A is significantly larger than group B. If there are 1,000,000 shallow scanners (group A) and only 100,000 deep scanners (group B) the reduction in relative risk is significant.

But what is total risk? Using SSH public-key authentication creates another set of users, group C, that can actually login to the server. Group C is also very small, usually consisting of only 1 member. Whether or not attackers belong to group A or group B isn't particularly significant in total, as the likelihood that a member of A or B is also a member of C is very, very low.

This, I think, is the crux of the "security by obscurity" criticism. Such security measures seem to do little to decrease the total risk to a system. So why implement obscure/avoidance measures?

The value of changing port numbers or port knocking (and reducing attack surface in general) isn't statistical. The value is completeness, or as a type of insurance. Using alternate port numbers could buy an admin some time if a OpenSSH 0-day occurs. This event isn't very likely, so we might dismiss it. But managing the risk of unlikely events is exactly the point of insurance.

leepowers··on Obscurity Is a Valid Security Layer
Obscurity is mostly useless. But minimizing the attack surface[1] is certainly useful. Changing the SSH port, port knocking, IP restricting which hosts can connect, etc., are all methods of reducing the attack surface. If you have a service (like SSH) that doesn't need to be available to every possible internet host then don't expose it to every possible internet host.

Can you SSH into an AWS load balancer? No, but someone is, or is otherwise managing these servers.

[1] https://www.owasp.org/index.php/Minimize_attack_surface_area

leepowers··on Islamophobia: Pakistani Data Scientist Forced to Leave USA
Disgusting. And such a waste. The only consolation here: there are 50 states in the union with many regionally distinct cultures, almost like mini-nations. Come over to the left west coast (Washington / Oregon / California) there are many places Usmani and his family would be welcomed.
leepowers··on Facebook Has Repeatedly Trended Fake News Since Firing Its Human Editors
> You're going to have to break the Turing Test before you get good automated content curation. There will always be error.

Yes, but even a competent AI curation system is going to make mistakes. The only relevant question is "what is an acceptable rate of error?". (Hint: 0% is not an acceptable answer.) We may be able to get to an acceptable rate (or may already be there) with or without AI-complete.

> People are worried about bias ... Information aggregators should have their members clearly spell out their positions on popular issues

This isn't a problem that can be solved with meta-data. An aggregator could write a beautiful, open-minded mission statement and still write trash. Hell, Google's unofficial mantra is "don't do evil". Well, ok then, there's nothing to worry about, Google has clearly spelled out their position, so there's no need to analyze or criticize their policies.

A policy statement or any other meta-data is not going to solve this. As you correctly noted an AI that passes the TT may be one way to work around this. But I'm skeptical. Any such AI would be at least as complicated as human intelligence, including all the foibles and errors that entails. An AI without our cognitive hang-ups would be smarter and more capable than us. Which would not increase my trust, and possibly decrease it, as the AI would no doubt have a bias to curate stories in it's own favor, or that put it (and AI in general) in the best light.

Bias is an unavoidable component of any curation.

leepowers··on Facebook Has Repeatedly Trended Fake News Since Firing Its Human Editors
What is the error rate of fake news over verified (real) news? A 5% margin of error could be acceptable. A 50% error rate would indicate a serious problem.

> As part of a larger audit of Facebook’s Trending topics, the Intersect logged every news story that trended across four accounts during the workdays from Aug. 31 to Sept. 22. During that time, we uncovered five trending stories that were indisputably fake and three that were profoundly inaccurate.

Yes, but out of how many Trending stories in total? Eight fake stories over a three week period seems like an acceptable rate of error.

Trending stories are popular stories. A fake story has an element of satire. These stories could be popular because of the satire (and the subsequent humor). Trending does not imply veracity.

leepowers··on Show HN: OneSite – Free, unlimited web hosting with cPanel and support. Yep
One major issue I see with free: there's no implicit contract and thus no expectation of long service life. Which is a real biggie when it comes to hosting.

Even paying a nominal fee for hosting (see https://www.nearlyfreespeech.net) is better than paying nothing. Because the exchange of money creates the expectation of services rendered.

The issue is security. Not in a technical, hardened web-server sense. But in the legal sense. A shared web host has root access to your databases. It has access to your API keys. It controls what files are served for your domain name. Paying for a service creates a business relationship, and at least the expectation of liability should a web host act maliciously.

leepowers··on Police Accidentally Record Themselves Conspiring to Fabricate Charges
Best case scenario, civil liability for the police department. Which makes the employee (police officer) and his chain of command appear as a "problem" within the police department. These guys are protecting their reputations and their careers. They are also trying to protect their department. Shameful.
leepowers··on Why I Don't Use React Router
This is very true for a wide range of applications and projects and is definitely required in many contexts (for instance - don't roll your own crypto). But for simpler components, such as a router, it may preferable to write a small focused class instead of creating a new dependency.
leepowers··on The Programmer’s Guide to a Sane Workweek
It depends - is the promotion worth it? Is it worth working 60 hours a week? There's more to life than work.

Also, if you get a reputation as a 60 hour worker that's going to be your expectation. After promotion that's going to be the expected schedule. The promotion after that will be the same. The point is you're not just working 60 until the next promotion. You'll probably end up working 60 for the next 10-20 years.

If that's ok with you, and that's what you want, then that's fine.

Another kicker: a company can fire you at pretty much any time and for any reason. Why pour yourself into an enterprise that can toss you aside at any moment?

leepowers··on House Intelligence Committee Letter to Obama on Snowden [pdf]
That depends on the members of the committee. Are they dedicated to substantive oversight, or a rubber-stamp process? This controversy ultimately boils down to a lack of oversight and accountability. The current spying regime maintains oversight by pliant secret courts and congressional committees is enough. The scale of the spying powers has not been met by equally powerful oversight.
leepowers··on House Intelligence Committee Letter to Obama on Snowden [pdf]
Check out this Intelligence Squared debate between Daniel Ellsberg (pentagon papers) vs. a former CIA director - it provides a deeper insight into the perspective behind this letter, and the vacuous arguments made by the anti-Snowden cohort: http://www.intelligencesquaredus.org/debates/snowden-was-jus...

The letter reminds me of how the DEA is consistently hyperbolic regarding the public health dangers of marijuana. To concede that weed is essentially harmless and medically useful would invalidate much of the drug war the DEA has waged for the past 40 years.

Similarly - to acknowledge Snowden in any positive light would invalidate the spying regime instituted by the U.S. government. And force the to acknowledge that their powerful spy tools require equally powerful oversight.

The lesson the NSA, the House committee, and others should take from Snowden is not that he's a villain. Rather, that one way or the other substantial oversight is going to occur, even if it requires the largest leak in history. Create truly transparent and accountable systems and there will be no more Snowdens. Throw the book at him, become more insular and secretive, and the problem will only get worse.

leepowers··on Why We Won’t Be Writing JavaScript in Five Years
This really hinges on the development of WebAssembly, the timeline to getting to a stable release version, and adoption by each browser vendor.

For instance, to use my location, my web browser displays a prompt asking if I want to share my location with a web site. I get to decide if I trust a web site.

If a website wants to run an arbitrary bytecode on my computer would it also ask for my permission first? Of course, web browsers interpret arbitrary JavaScript without asking for permission, so this may be a distinction without a difference. But how will vendors implement this?

The most likely scenario, I think, is that in any scenario where WebAssembly is widely adopted it will live side-by-side JavaScript for at least a decade or longer. Vendors will continue to ship JavaScript interpreters - so there's no immediate reason to jump from interpreted to bytecode. Most web sites that use JavaScript don't use that much. Meaning, WebAssembly is an over complication for a very common type of web site, the informational, landing page, photo sharing, blog, etc. In fact, if there's just a few AJAX calls or simple interactions on a site, you'd be an asshole to implement it in WebAssembly. Programming is about removing complexity. Imposing a bytecode compiling tool-chain is unneeded.

Also, we have front-end ecosystems, like the large online collection of jQuery plugins. Want a photo slider? Just drop in the JavaScript include and go. This may be mitigated by compiling jQuery and existing plugins to WebAssembly. (And possibly become part of optimizing front-end assets). But if you're going to use the JavaScript/jQuery ecosystem why would you code just your part in Ruby or Python or some other language? If you were to do this, you would be an asshole. If your ecosystem is JavaScript, write your code in JavaScript. The problem is not the programming language used. The problem is understanding the context (web browser) and interacting with multiple front-end environments, across a wide range of network speeds and devices.

That being said, I've worked on several large projects where writing in one language, compiling to bytecode, and running everywhere would have been awesome.

Assuming wide-spread adoption WebAssembly will probably have the following use cases:

1) Large, complex web apps with a heavy front-end footprint.

2) Used as part of the optimization pipeline. Instead of minifying, combining, and zipping JavaScript, compile to WebAssembly for delivery.

3) Programming tasks/scenarios where JavaScript literally cannot be used due to the limitations of the language.

leepowers··on Ask HN: What are the tax advantages of incorporating vs. an LLC?
Partnerships, S-Corps, LLCs are pass-through entities - meaning profits are treated as self-employed/contractor income, and excluded from corporate taxes (though you can elect to have an LLC taxed as a corporation, which may be advantageous in certain situations). However, pass-through income is subject to self-employment taxes, which currently sit at about 15%.

S-Corp - if your business is earning a lot of profit it can make sense to pay yourself a salary and the remainder of profit as a distribution, which is not subject to the 15% self-employment tax: https://turbotax.intuit.com/tax-tools/tax-tips/Small-Busines...

C-Corp - For a company you founded a QSBS or Qualified Small Business Stock can be excluded (in whole or in part) from capital gain taxes. So, as your company grows year after year, and it's valuation rises year over year, this can save a lot of money when selling: http://www.lexology.com/library/detail.aspx?g=dde20f35-2d5e-...

leepowers··on The Direct Democracy President
Seems much ado about nothing. This certainly isn't direct democracy, and certainly isn't anything new. Presidential candidates have always "pivoted" - i.e., changed or moderated their policies to appeal to a larger voting bloc. Adams is looking at this situation through rose-tinted, pro-Trump glasses. When Hillary pivots (e.g., now opposes TPP) it's cynical persuasion and politics as usual. When Trump pivots it's a revolutionary, modern, web-enabled implementation of direct democracy. Give me a break.
leepowers··on This Image Is Also an HTML Webpage
The interesting thing here is the browser renders content of "text/html" as an image when included as the src of an <img> tag. There's some extra sniffing going on by the browser to suss out what type of file is being delivered. The idea, I guess, is that in the wild servers don't always return the correct content type. Such as a PHP script that outputs a dynamically generated graphic, but a developer neglects to set the content type.
leepowers··on What “full stack” really means to the job market
Also - "full stack" can also mean "we don't want to hire another developer, we want one person to (poorly) do the job of three other coders"
leepowers··on What “full stack” really means to the job market
> I have met many programmers that don’t like to code in their spare time, and that has reliably revealed them to be sub-par developers.

I dunno. When I spend 8 hours a day coding (paid), spending another 2-4 working on my own stuff isn't all that appealing. I mean, I want to do other things with my life than just write code. If that makes me a shoddy developer so be it.

When I'm not busy on paid work I do explore new technologies and techniques. Perhaps this is what the author is refering to? However I still consider this to be "work", as it's a way to shore up my skills. It's unpaid but it makes my skillset and my time more valuable.

leepowers··on Google deletes artist’s blog, a decade of his work
So there's a good chance this guy is a creep. That doesn't change the fact that any content any of us have posted to a third-party site (be it Google, Facebook, Twitter, Reddit, etc.) can be taken down at any time, without notification or appeal. Certainly these third-party companies mostly take down the pedos and creeps, but that doesn't really matter. Power is delineated by the maximum possible reach of their actions, not by how they choose to act at any given moment.
← PreviousPage 5 of 10Next →