HNHacker News
TopNewBestAskShowJobs

ffn

816 karma · joined April 25, 2012

foxnewsnetwork.github.io
submissionscomments
ffn··on Gigo: Pip for Go
Why doesn't NPM work for you? If it's an user-permission thing (which is common if you installed node straight-up), consider installing nodejs using NVM (node version manager). This also has the advantage that you don't have to sudo npm.
ffn··on A troll turned on #haskell
TIL ghcjs is a thing; I tried using fay some years back and it had a lot of issues not properly compiling on my machine.
ffn··on The Future of Sex: It Gets Better
As a hobbyist adult mango artist, I have to agree, the internet has done wonders for sex. And, as a ME/CS engineer, I would really like to be able to be at the forefront of further advances in the field of robotics...

But all hype and optimism aside, why is there no medication for female sexual dysfunction? I'm trying to come up reason by looking at this from various perspectives, but nothing seems to make much sense. From a religious point of view, reproduction in a marriage is important, so it'd make sense if the female is sexually interested. From an economic point of view, developing a drug that solves a market need is worth tons of money (also no competition). From a feminist point of view, a woman's body, including her sex, should be her own and any dysfunctions she should be entitled to fix. From a misogynist's point of view, sex is one of the things a woman is good for, so it makes sense you can have it with her.

So why is there no drug for female sexual dysfunction? Is it really difficult technically or something?

ffn··on Becoming Productive in Haskell
Absolutely, Haskell has a richness of concepts to it that's entirely in a class of its own... but that being said, Haskell is to programming what sex is to life (for a woman... because men's natural enjoyment of sex throws off my following analogy). Granted there is richness and joy in finally discovering it, one needs to realize it's important that one isn't forced into it too early. Haskell demands a lot of thinking up front and therefore requires a programmer of a certain logical / organizational maturity in order for the process not to be frustrating and painful (or even traumatizing). Haskell (like C, Lisp, and the arcane slog known as Erlang) should rarely be someone's first language.

And that's where Ruby, Python, Javascript, and to some extent Matlab come in. For whatever else people may say about them later (they don't scale, they're a roadblock, they're a mess, null is not a function, etc.), they were there for you when you were programmatically young and they introduced you gently into a world that's otherwise extremely complex.

After all, programming, like literally everything else, is 99% human and 1% logic, machines, data, "scaling", etc. Programs are written by people for people (incidentally they can also be read by a computer), so it's incredible important that the 99% of that equation (you the programmer) don't become discouraged at the onset by an extremely elegant, expressive, but rather rapey language before you're ready for it. In that sense, it's absolutely okay to be "seduced" by an easy scripting language in the beginning. Eventually, though, when you start lamenting about "undefined is not a function" and how that could be so easily avoided when proper type-checking, that's your body telling you that you're ready for Haskell now.

ffn··on The Slow Death of the University
This was easily one of the wittiest and funniest articles I've ever read from a British author...

But why shouldn't vampires be more lauded than Victorians? Why should Jane Austen, with her painfully circumlocutions, be more academically welcome than that woman (forget her name) who wrote 50 shades of gay? In many ways, old "classical" works are telling the exact same stories as modern "trash novel" works, except the modern "trash novel" works are doing it in such a way that is clear, simple, relevant (to today's audience), and thus free of misunderstandings. From them, through clever literally mental contortions, one can still elucidate all the themes, lessons, and humanities like you could from confounding classics - just less obfuscated like "there is no place like home" instead of "lost is my homecoming", "...and then they had sex and fell in love..." instead of "... I profane with my unworthiest hand this holy shrine, the gentle fine is this...", etc.

And who says the arts are dying? The arts are vibrant and alive in today's web-comics, video games, movies, and tv-shows. The medium has changed from a completely closed system of ink and paint to a modular, copyable, and distributable one of .mdl files, computer images, and carrier streams. It's just intentionally confusing junk like cubism, poorly drawn junk like medieval art, and inhumane junk like pyramid building that's gone away.

The pressure to have to constantly monetize, I'll admit, is painful... but that primarily hurts the large institutions who have bottom lines that must be covered. And in my opinion as a flexible small business kind of guy, that's a good thing. Large institutions were necessary for centuries for individual survival at the cost of individual self-actualization, but in today's flexible scale era, it's entirely possible to just be good at something and survive without having to give up your soul to a large corporation. In that case, going small, lean, and individual is the way of the bright future.

ffn··on Wherein I ridicule Facebook some more, then collaborate with the Panopticon
I don't like facebook either, but can't we just not use something without making a huge sensational scene about it?

Also, for those whose eyes hurt from the matrix color theme the site uses, you can change the colors by opening up console and running:

document.getElementsByTagName("body")[0].setAttribute("style", "color: #333; background-color: #ddd");

ffn··on When You Lose Weight, Where Does It Go?
What about rubbing? I mean, when you rub against stuff (even wind), some of your cells get taken off. I'm all for peeing, pooping, and breathing, but how much weight do we lose just through simple friction? And if it's significant, should we employ more rubbing in our daily exercise routines?
ffn··on Ask HN: Please stop making infinite scrolling websites
Yes, I agree infinite scrolling is kind of inconvenient, but what do you guys think of one-page-websites in general? For example, a lot of company landing pages do this nowadays, and it looks something like this:

--------

some background pic

some call to action

---------

about section

----------

product section

----------

other people are saying section

---------

example usage section

---------

api docs section

---------

some social section

----------

footer

-----------

And as you scroll down the page, various transitions and animations (powered by jquery) popped out telling you more about the product / asking you to make an account.

I personally have made a good handful of websites like this, but I never really enjoyed the scrolling down craze because I use Emberjs and dumping everything into one application.hbs really isn't what Ember is about. But what's the consensus out there? Do people enjoy layouts like this?

edit: formatting

ffn··on Google Cloud sucks
I really enjoyed the RMS comment also; whoever wrote that wins the daily snark award.

That being said, yeah, a lot of Google's paid developer facing tools are actually quite terrible (like their Youtube api/v3 - not the iframe one, the supposed restful data one). Which is strange because their open source stuff tend to be pretty good. So it's like giving Google money actually makes things worse. Especially with using their APIs, it's often felt like I'm paying Google to punch me in the face rather than actually provide better service.

ffn··on Google got it wrong. The open-office trend is destroying the workplace
This seriously depends on the person. I personally hate having to commute to an office and would much prefer to work remotely from home, but I know plenty of folks who enjoy the social interaction at an open (or closed) work space. Besides, open, close, or remote work place is much more of a personal preference (like preference for different IDEs) than some inherently right or wrong decision a company can make (like decreeing no employee is allowed to become pregnant). So the smart company should leave the choice of whether to work at the open office, in a closed cubicle, or remotely at home up to the employee so that the details of how an employee maximizes his productivity is left to him, instead of handed down from up-top based upon statistical studies. After all, if you as an employer is going to trust your employees to be able to properly optimize your dataflows, innovate new databases techniques, not "drop table users", etc., why not also trust your employees to know what work environment works best for him?
ffn··on The Cult of Work You Never Meant to Join
You're absolutely right, but I'd argue that, by switching to a more balanced life-style, you're still optimizing your life... except instead of optimizing for money-earned by your company, you're maximizing for personal health and satisfaction. And really it's this question of "what are we optimizing for?" (aka "what's do I want to do in my life?") that explains why we buy into the culture of overwork.

As in, if your goal in life is to maximize company and personal profit per time, then by all means, committing to an over kill culture will get you there. If you want to party hard (and I mean hard as in hookers and cocaine in a pent house, not a weekend camping trip to Yosemite or whatever), you will need to work hard. On the other hand, if your goal in life is to live long and healthy and or get really good at your craft, then it makes sense to limit your daily hours and be patient.

If you don't know what your life goals are (and I imagine a lot of young folks are in this category), then you'll readily buy into whatever life-goals are presented to you by whoever person has the most social influence. And the young guys who flaunt the tons of money they have made in a short amount of time through overworking really hard influence us a lot more than the old guys who intentionally don't mention the large sum of money they've made working slowly over time. So we model our lives after those fast burners, and try to replicate their success despite having a different set of physical resources to work with.

This (lack thereof) personal life strategy will work for a tiny population of the folks who adopt it, and having known only success, they will have some level of contempt for the large majority who couldn't do it. As for the large majority who fail, they'll either figure out how to be patient and lead a balanced life (like the writer of this blog), or wind up with some sort of kidney disease in their 30s. And that's really just life when you throw out all the frivolous junk of "optimized load times", "brand adherence", "platform agnosticism", "shipping deadlines", etc., it is about finding out what for yourself what you can and what you're going to optimize for in your short several decades on this relatively eternal planet.

ffn··on Has the First Person to Achieve Immortality Already Been Born?
If you read between the lines of this guy's comment, you can infer he is implying that he will get to be the first immortal person.
ffn··on [dead]
No, but the article is written by someone who identifies as a vicious vegan; not an understanding-vegan, a compromising-vegan, or even a strongly-opinionated-but-reasonable vegan. But instead, it's by a vicious vegan who, judging by the sarcastic and defensive tone, is taking the nytime's report of our almond trees and drought as a personal attack.
ffn··on Ten Years of Git: An Interview with Linus Torvalds
Jesus, so Torvalds built the MVP for git in 1 day and pretty much scaled it up for kernel usage in 10 days. Now, as a humble average developer, how do I achieve Torvaldian levels of productivity?
ffn··on Programming Languages in 2014
Well, to be fair, saying a JS code-slave (of which I am one) really likes TypeScript is like saying a malnourished man lost for a month in Death Valley sustaining only on dead maggots and his own urine really likes dining at the Home Town Buffet. He would already have been overjoyed with some coffee and harmony, yet the gods decided to give him a real meal.

You won't find a single Javascript engineer who hasn't been tortured by "Undefined is not a function" or worse on a daily basis, so something that promises to liberate us from this evil is always appreciated.

ffn··on Io.js community thoughts on reconciliation
Politics and "what it may mean for the future" talks aside, are there any API / performance / engineering differences between io and node today? I mean, there's a lot of talk regarding why joyent is bad or how joyent did nothing wrong, but from a js user's point of view, I'm rather more interested in the tangible non-human differences in node and io.
ffn··on Google APIs Repository on GitHub
In particular, they aren't restful or intuitive. If you've never used youtube's api v3, and someone demanded you give a basic explanation of what youtube data should look like, you'd guess:

1. a user has many (or has one) channels 2. a channel has many playlists 3. a playlist has many videos

So naturally, you'd expect the following:

1. api/v3/channels/teamcoco -> gets you the channel with id "teamcoco" 2. api/v3/channels/teamcoco/playlists -> gets you all the playlists on teamcoco's channel. Say they have ids [coco-001, coco-002, coco-uploads, ...] 3. api/v3/playlists/coco-uploads -> should get you the playlist with id "coco-uploads" 4. api/v3/playlists/coco-uploads/videos -> should get you the videos belonging to playlist id "coco-uploads"

Of course, the real api/v3 has none of that. The full details you'll have to read at the developer console at google, but in rough summary, if you wanted the teamcoco channel, you'd do:

1. api/v3/channels?forUsername=teamcoco&parts=id,snippet,topicDetails,contentDetails&fields=([forgot-what-went-here])

And you'd get a json that looks like: { ... items: [...], ... }

and all 1 channel with id "teamcoco" will be in items, with playlist info strewn somewhere in topicDetails or contentDetails. Then, when you want playlist information, you have to look at either the /playlist?id=whatever or /playlistItem?forChannel=whatever, depending on whether you wanted playlist metadata or playlist video data.

In all, it's an extremely horrible user experience, and yes, I get it, Google has to split up the data model so youtube can scale. Sure, but then they go about and expose all the details of their implementation in their external developer facing API. And if you've ever worked with other such api that has their innards exposed for the outside world to see, you know to be antsy. Such trashy api is bound to be refactored as soon another "Rockstar" engineer gets hired, so say goodbye to whatever customized adapter/serializer you wind up writing for api/v3 4 months down the road.

ffn··on Google APIs Repository on GitHub
Well I for one hope they put all of their API code up on github so the community can contribute to it. Just have to say, google's youtube api v3 is absolutely awful compared to the delightfully restful API of Github or Twitter.
ffn··on Ask HN: How to move beyond “freelancer”?
My personal trick was to move the hell out of SF and the Bay Area (this could be generalized to out of any large concentrated hub of people who also do the same thing as you). If you're not dealing with tons of other engineers who need odds and ends like dev tools, integration testing, api adapters, and other such things that will never see the light of the outside world, you can get much "better" terms on your projects. For example, if your client is a starving country musician in backwater Louisiana, you can build his entire website for him and charge him a portion of whatever album sales happen through his website. This means a lot less upfront $$, a little more risk, but generally much more stable long term pay-offs because you've aligned your mutual incentives.
ffn··on TANX: online multiplayer tank battle using WebGL and Node.js
I think there's a good majority of us who grew up playing RPGs or city-builders. We're unfortunately unaccustomed to the ravages of war... even when it's just war on an internet-based tank game.
ffn··on TANX: online multiplayer tank battle using WebGL and Node.js
Hey this is awesome! Really love your grid. Any chance you can share with us what frameworks you used? I'm particularly interested in what you used to build your 3d grid.
ffn··on A Strong Welfare State Produces More Entrepreneurs
Honestly, social-structure probably has a lot more to do with amount of entrepreneurs in a nation. In America, we utter the word "entrepreneur" the same way a 1960s boy would utter the word "astronaut" (or, if Soviet, "cosmonaut" or "potato"). As an American, I take it for granted that I can do a startup without my wife fearing she'll be ostracized by her friends, that I can still find a job if things don't work out, and the general public thinks it's endearing to support local/small businesses. Plus my parents don't feel the need to wallow in shame if I were to stay in their garage for a year to build my prototype (unless they're Asian), which effectively removes all my internal barriers to quitting my job and going down the path less traveled. The fact that social-security is there for me when I retire at 65 (lol) or so, general medical insurance won't be denied to me (considering the demographic of your average entrepreneur, why would it in the first place?), etc., don't occur to me at all.

As much as your average 20-something cynical know-it-all likes to bag on our education system and its spew of "you're special", "believe in your dreams", "don't be afraid to do something if you truly believe in it", etc., I should think it's that very sort of indoctrination starting at a young age that is ultimately responsible for so many Americans casting caution to the wind and pursuing their "American Dream", and for so many other Americans to sympathize with and be willing to support such folk on their trek.

But I will admit that the one government innovation that definitely helps entrepreneurship is the creation of the corporation. The fact that I can create this entity that's owned by me and the family, friends, and fools who believe in me, and that if things go South, the corporation can die without dragging me down with it, is extremely helpful in encouraging folks to venture. If I was a builder and the law was that if a house collapses and kills its residents, the builder will be found and killed in an eye-for-an-eye manor, I'd seriously think twice about building a house for anyone other than myself.

So what encourages entrepreneurship? Telling people since the founding of your nation that entrepreneurship is good and providing a means of separating the entrepreneur from his corporation.

ffn··on How Super Angel Chris Sacca Burned Bridges and Crafted the Best Seed Portfolio
What do you expect journalists and writers to do? The true secrets to success haven't changed since the days of Aristotle: go at something you love with hard work and perseverance and when (and if) the world meets you halfway, you'll find success. But repeating that story won't get you to the front page of HN, or even basic readership, or even comments in your comment section.
ffn··on The User Is Drunk
lol love this idea... but my target audience is teenage Asian girls who like anime. If OP's current thing is successful, will you be willing to do a theuserisajapaneseschoolgirl.com ?
ffn··on JavaScript's world domination
As much as I am anally pained by the following things in JS:

1 + "2" = "12" but "1" - 1 = 0

0 == false ( "if window.scrollTop ..." will occasionally break on user scroll )

undefined == null ( why do we need 2 empty sets? )

undefined + "dog" != null + "dog" ( breaks transitive property )

undefined !== null ( but native operators like ? and if uses == and not === )

I'm really glad Javascript is taking over. Mostly because I am a small business / indie dev and using Javascript allows me to off-load a lot of work onto distributed client computers. Which, in turn, allows me to piggy back off of Google, Github, etc., for free hosting and be massively "scalable" to traffic spikes with no cost to me. Js has become massively portable so rapid prototyping and deliver is more possible now than ever.

ffn··on Bug 1202858 – Restarting squid results in deleting all files in hard-drive
Thanks OP, this actually made me laugh uproariously. Anyway, I'd be willing to bet 100 push-ups that (unless it was malicious and not a bug), this thing is caused by some clean up code somewhere that originally intended to do "rm -rf /path/to/squid/socket" but the function that was suppose to generate the "/path/to/squid/socket" string instead generated a null which was then parseString'd onto a "" via some + function that was trying to do "/" + null.

But I'm neither a redhat user nor an OS dev, so I might completely wrong.

ffn··on Primer – CSS toolkit and guidelines that power GitHub
Just be sure to use @include and not @extend, otherwise you'll wind up blowing through your allowed selector ration and wind up wonky css bugs that you will never be able to resolve without re-writing everything.
ffn··on Non-Obvious Tips for Your YC Application
2cool4school high school semantics aside, "be awesomer" is sound advice. Consider the second word "awesomer" (I assume this is the word you don't like, since I can't see anyone with a qualm against "be"), what is "awesomer"?

Or, more to the point, what is "awesome"? Well, something that fills one with awe. But what is "awe"? According to Dr. Dacher Keltner (Born to be Good), "awe" is a feeling of uplifting that one gets when he is looking on things from up high. It's a feeling we get when we suddenly see our world and ourselves in a much larger scope; when we come to some understanding of our place, our path, and our purpose in our universe. Since time immemorial, it's a feeling we've associated with divinity.

It's hard to say what fills others with awe, but to be awesome from your own perspective is to do something that would fill you with awe. To "be awesomer" then is to be do more of that thing which fills you with purpose and meaning and (since your time and resources are finite) to do it at the cost of all the other things that just grind away at your life yet you feel no purpose, meaning, or self-actualization from.

So, what does "be awesomer" mean when translated out of uncool-high-school-faggotnese (and, incidentally, into cult-of-TEDnish)? It means to take a risk, abandon the beaten and grinding path, and to live a life that feels meaningful to you. If you ask me, that's sound advice; possibly irresponsible if you're a parent with kids depending on you, but definitely solid otherwise.

ffn··on Sources to Find a Remote Job as a Software Developer
Great article, going to come back to this in like 3 months when I'll be looking for work again.
ffn··on Mentors Are the Secret Weapons of Successful Startups
Well, unless you're in a extremely third world shithole, or you're some sort of ridiculous statistical anomaly in the first world, the true secret to success is (and was) always determination, hard work, and patience. Unfortunately, it's not much of a secret, it requires a lot from the individual, it stinks of republican ideology, and therefore isn't a very sensational topic to write a tech-crunch hype (redundant) article about. Plus, on some level, it offends people's idea of fairness and causality because there is some in-determinism involved such that 80 units of hard work on say Mark Zuckerberg = billion dollar public corporation, while 8000 units of hard work on you = only a humble small business.
← PreviousPage 4 of 7Next →