hacker news with inline top comments    .. more ..    17 Dec 2012 News
home   ask   best   6 years ago   
Why I Won't Relocate to Work for Your Startup erniemiller.org
133 points by emiller829  3 hours ago   74 comments top 32
calinet6 2 hours ago 3 replies      
Based on several experiences doing startups with remote people versus local, I would now be extremely hesitant to hire someone who would not relocate or work locally.

Companiesâ€"especially small onesâ€"are defined by their culture, and I really think culture is best developed and maintained in person. We recently had three of our team members move away for various reasons, and they're now working remotely. It has been a shake-up. I won't say it's a bad thing, because I truly want them to be happy, and I'm truly willing help them make it work, but it has been a surprising culture shift for our entire company. At this point, I think we'll make it work, but the day-to-day work experience for all our employees has changed dramatically and that's not something to take lightly.

Find a place you truly want to live (which definitely doesn't have to be in the Bay Area) and find a company that you want to work for locally. Go into the office every day. Talk with people about more than work. Connect and develop relationships. Work toward a true culture that exemplifies what the company stands for both internally and externally, and make it meaningful to everyone involved.

That's what makes me happy, and that's what I'm optimizing for. Am I in the absolute number one place that I want to be in, period? Maybe not. If I had my say I'd be living and working on the east side of the Sierra Nevada within 1 hour each of Mammoth mountain and the Yosemite highlandsâ€"and that may be my eventual destination.

But right now, location is far less important to me than the people I spend each day with, the people with whom I work, and the company culture that I'm helping to generate and preserve. That's what moves me forward each day, and I truly believe that will make my company more successful and sustainable.

I understand you though. I went through a time in my life where I was more attached to places than people. Turns out I was in the right place all along, but I just hadn't run into the right people. That changed for me, and now I truly believe that location is a small price to pay. It's complicatedâ€"it is of course better to have a great employee working remotely than a poor one in the office, but I think it's even betterâ€"perhaps exponentially so and especially to a startupâ€"to have that great employee in the same room.

*Edit: I'd like to add, that part of this is the "who moved my cheese" problem, of going from a 100% local company to a significantly dispersed company. We are adapting as a whole and each week we improve our process and culture. The challenge has become "how do we maintain a culture and coherence remotely?" I think in time we will be successful at that, and continue to be a strong group, but it's still a challenge, and one that you'll have to weigh against other challenges if you so choose.

DanBlake 1 minute ago 0 replies      
I think the issue is that very few people want to live in KY, as opposed to what the author thinks.

From another comment:
As of 2006-2010, median price of a house in Louisville is $48,300. The median sales price for homes in San Francisco CA for Sep 12 to Nov 12 was $750,000.</comment>

That is the free market at work. The population has deemed they would rather pay 15 times more to live in San Francisco than KY. There is a reason that the homes are that price there- There are more sellers than buyers and a plethora of supply, so the price is driven down.

On the most inaccurate and basic of breakdowns, 15 out of 16 people would rather not live in KY.

marknutter 2 hours ago 2 replies      
There will always be dogma associated with the belief that in-person interaction is more valuable than remote interaction, much like the same dogma people some people have about preferring physical books to e-book readers. People aren't able to truly quantify the benefit of working on-site, but they will flail their hands vigorously in an attempt to qualify it.

On the other hand, it's very easy to quantify the benefit of remote workers. You increase your potential labor force if you remove geographic restrictions, which cuts costs and improves productivity. I personally was able to quantify the benefit of working remotely in terms of distractions. I work remotely on a medium sized team and I occasionally travel to the headquarters to work on-site. My productivity always drops when I'm on-site because of the constant interruptions and meetings, both initiated by others and myself.

jasonkester 1 hour ago 0 replies      
Well said.

It's not that your city isn't fun and exciting. It's that your office is in a building in that city, whereas my office is anyplace I feel like being at the moment.

Now I might feel like being in your city for a while. Possibly even in your cool office. But for half the year I'll probably be someplace completely different. Because I can.

The author hit the nail on the head when he explained why this gig is so great: we can do it from anywhere.

The good companies have figured this out and are encouraging their people to do just that. Since that's now a viable option, it's tough to understand why people are still working for companies that don't give that option.

wtvanhest 2 hours ago 4 replies      
After living in Florida (Orlando, Naples), CA (Santa Clara), Boston and DC, I like to apply "The Efficient Frontier" to locations I choose.

Essentially the efficient frontier is a finance concept that says that combinations of assets can be graphed and form a line called "The Efficient Frontier" where only portfolios of assets on that line should be considered.

Sorry for the link to wiki, but this is a really short article. http://en.wikipedia.org/wiki/Efficient_frontier

When I consider where I live, I want to optimize to make sure I am on that frontier. Instead of risk and return on the axises, I think of a multivariant optimization, but essentially what I am saying is that many cities do not make it on the efficient frontier when looking logically.

For example, is there anyway that Louisville has as rich of a history as NYC, or DC, Boston or even SF?

Does Louisville have better night life than any other big city (DC, NYC, SF, Boston?)

Does Louisville have better skyline than any other big city (DC, NYC, SF, Boston?)

Does Louisville have better live performances than any other big city (DC, NYC, SF, Boston?)

Does Louisville have better museums than any other big city (DC, NYC, SF, Boston?)

Does Louisville have a better hipster scene than any other big city (DC, NYC, SF, Boston?). Its probably better than Boston's, but I don't care whether hipsters are part of the culture or not.

And the OP's biggest point, that he likes to drive to rural areas in 15 minutes. Its more like 20 minutes from SF, but some of the best mountain biking, trails etc. is right there. Boston has the same thing 20 minutes away. IMO DC and NYC are harder to get to rurual areas.

Liking Louisville is completely understandable if you just like being familar and don't want to move and have to make new friends etc. but it should be 100% understandable why a recruiter cannot imagine someone wanting to stay when viewing the opportunity as an outsider.

[ADDED] I reread what I wrote and it seems like I'm bashing Louisville, more my intention was to put out the efficient frontier concept for selecting a location.

[To unalone and the OP] Sorry for coming off as pompous. It does read a little that way, but I used the OP's criteria, not my own. The OP could have made a much better arugument by specifying what he likes about the criteria, but he didn't do that so I just asked the questions rather than making an assertion about them. Notice that I didn't specify whether DC does have better nightlife than Louisville? I instead just asked the question which the reader can answer on their own.

subway 2 hours ago 0 replies      
As one of those "Highlands Hipsters", I couldn't agree with you more. I've relocated a couple times for jobs in TX and CA, but found myself missing Louisville enough that I was spending a significant portion of my income flying back here.
Before leaving SF I was absolutely terrified I wouldn't be able to find a local job doing the kind of work I enjoy, and it turns out even though I was right about being able to find something local that really interested me it didn't really matter -- within a month of beginning my job search I had 3 competing offers for remote work. This experience has helped me realize that far more companies are open to remote employees than recruiters would initially have you believe, particularly if you're willing to make a 2-3 day trip to one of the coasts every month.
untog 1 hour ago 0 replies      
The OP is not willing to move to work for your startup. That's fine. You may not hire him because of that. That's also fine. Another company may be more than happy to hire him. Great.

There isn't a right and wrong answer here, IMO. In my experience, working in the same location and working in different locations are very different working experiences. For some companies and employees, one will work. For others, it will not. I will be very hesitant to ever enter into a remote working situation again- I did not like it at all. But that's just me.

All that is required is for you to make sure you work for a company that matches you- don't get angry if a company/prospective employee doesn't match what you want. That's where the article's complaints about recruiters ring true- they don't know/care. But they don't know/care about anything other than the buzzwords on your resume, so this shouldn't be anything new.

(Ironically, just this morning I got a LinkedIn spam message from "CultureFit Staffing". Anything but, folks...)

netcan 2 hours ago 1 reply      
It's funny that this article is even necessary.

Not wanting to move for a job is the default for 99% of the world.

silverbax88 1 hour ago 2 replies      
I agree with the bulk of the article, with one exception:

"Don't take (or keep) a job because you like the people. If you're a decent person, you'll find people you like (and who like you) at any job you take."

This is patently NOT true. The people you work with, in my experience, matter far more than any other factor.

michaelochurch 1 hour ago 0 replies      
I like this idea a lot, but here's the issue that I find. For most projects, I get to a point where I actually care (sometimes that happens way too fast) about the health of the project, which means that I want to be in a decision-making role-- not necessarily "management" but some sort of creative or technical leadership. Getting that seems to require in-person contact. It requires trust so it rarely happens when people haven't shared physical space.

What you're paying when you suffer Manhattan or Bay Area rent is the career benefit (?) that it confers to live in such a place. You may be overpaying; you probably are. I don't think anyone has good data on this, which is why the extortionist mega-landlords who set prices (by limiting supply through NIMBY regulations) can get away with so much. No one has a good handle on what it's actually worth to live and work in a star city. I think a lot of people pile into star cities because they're driven by FUD and FOMO (Fear Of Missing Out).

I don't know what "the right answer" is but I can see the appeal of living in these high-rent areas. It really sucks, though, because we're in an uncanny valley where people are just mobile enough to stratify by ambition (with a lot of noise in the mix; I am not saying that people who don't live in expensive places aren't ambitious, but the correlation exists) in their 20s, but not enough to render location obsolete.

binarymax 2 hours ago 0 replies      
Glad you said this and glad it was voted to the top. Sometimes, while lost in the feedback loop of HN and startup news in general, its easy to lose sight of the fact that our world exists in a layer that shouldn't tie one down to a physical location.

I've been living in a small coastal town now for 4 years, not close to much of anything related to my field, yet I am working and happier than I could ever be in some metropolis.

dreamdu5t 53 minutes ago 0 replies      
Any tech company that doesn't want to hire remote workers will simply lose out on a pool of great talent that others will be smart enough to utilize.

Employers will avoid remote workers at their own loss.

MatthewPhillips 58 minutes ago 1 reply      
There are a few HNers who live in Louisville, myself included (want to grab a beer some time Ernie?). 1 major downside: probably 85+% of local programming jobs are .NET. Maybe another 10% are Java, 4% are Ruby, and the remaining 1% is hard to come by.

Working remote is awesome, I hope to do it again some day (Clojure or JavaScript for me, if anyone is hiring) but its very important that everyone is on the same table about expectations. You get into the habit of working long hours for a couple of reasons: first because you are home anyways and might not have anything else to do (not a terrible reason), and secondly because you want to show the company that you're working hard -- something that isn't an issue when working locally.

I've turned down a couple of good opportunities because I didn't want to relocate. Of all of the reasons to relocate to a new city, I think doing so for work is possibly the work reason. It's too easy to fall into a trap where work becomes your life.

mattdeboard 17 minutes ago 0 replies      
Louisville's general awesomeness makes me embarrassed for Indianapolis. It really blows us out of the water. I wouldn't expect someone to relo out of Louisville either.
bmelton 2 hours ago 2 replies      
Great, thoughtful article. As someone whose office is in Mountain View, but lives and works from home in Annapolis, MD (the entirely opposite coast,) I definitely relate.

The compromise that I've made is that in spending a few days in Mountain View every 6 weeks or so. It's not terribly inconvenient for me, allows me to pad my frequent flyer miles, and I generally enjoy California. I think that the cost of living between California and Maryland are a lot closer than Louisville would be, so I've always got my eye open to possibly relocating somewhere even cheaper than here -- my home town is Memphis, TN, which is damn near free to live in comparatively, but I really like Annapolis, its proximity to DC and Baltimore, and the knowledge that almost everything is within a couple of hours.

The biggest trouble I have is that I really like the bigger cities. I love the time I spend in and around San Francisco, and on occasion I'll spend time in NY, which I also enjoy. I can't ever tell though if it's just because I'm effectively a tourist, or how much I would enjoy it as a permanent residence. Ultimately, I think I'm plenty happy anywhere with a temperate climate and the ability to work from home, so I'm occasionally torn on job offers I receive to work in sexier locales. Grats to Ernie for having found his ideal place. The spot I'd move to to maximize dollar value (Memphis) is too hot to be perfectly happy, and all the places I've found with better climates tend to be more expensive -- so perhaps I'm still searching for my idyllic setting, or perhaps it's just a matter of the grass being greener.

desireco42 46 minutes ago 0 replies      
It works for 37 signals. It shows you that companies that treat their devs as people (like 37 signals) instead of resources or head count can develop superior software and somehow have their people happy without the need to make fake enthusiasm.

I would say startups are probably most likely to be able to take advantage of this.

BTW, this post makes me want to move to Louisville and join Ernie :) (not really, Chicago is really nice).

scottmagdalein 2 hours ago 0 replies      
Thanks for this Ernie. I've been considering a job far from home because I like the people and the organization. The job role is a step down from where I am in my "career path" and leaving all of my family, separating my son from his extended family, are real issues for me.

Optimizing for happiness, put in the context of actual real-world happiness, is a strong point. I'll keep praying about it...

charliepark 2 hours ago 1 reply      
I really enjoyed this, especially the line "Life's too short to spend so much of it in between the places you truly want to be." So, so true.
cciesquare 38 minutes ago 0 replies      
Sorry but this comes off as really pompous. Essentially what you're saying is that I am so good, you will be hired on your terms.

If you had gone in with the mind set, "I want to work locally, and relocating isn't something that works for me." I can respect that, but when you say I wont locate for YOU, comes off as saying, hey I make the decisions not you. Or an attention grabbing title for a post.

For a full time employee, remote work is like a long distance relationship, more often than not, they just do not work. Heck contract remote work is already difficult as is.

Hawkee 1 hour ago 0 replies      
I absolutely agree with this. I recently moved across the country to a city where there is very little tech work, but this move wasn't for work. I moved to support my local church, and not as a pastor or worker, but as another member. I can't imagine a better reason to move. Because of this I wouldn't consider moving even 2hrs north to DC for triple the income. Through this experience I've realized how little value money really has in terms of true peace in my heart. Living month to month, contract to contract even gives me a richer experience of life that I wouldn't trade for the world. Working 9-5 making 100k+/year would certainly be easy, but I don't live for money.
armored_mammal 1 hour ago 0 replies      
I like having co-workers and actually going in to the office, but you'd have to start talking MASSIVE salary increase to get me to go NY or SF with the cost of living so high, commutes so awful, and onerous laws so numerous.

Concur with author 100%. There are lots of nice cities in the US that are way cheaper and more livable than the big 2, and moving from one of them to effectively make less, commute more, and have less personal time, even after taking a hit on the cost of living adjustment is pretty questionable.

If I were to move to SF I don't see how I could afford a place that was both close to work and had a garage where I could tinker unless I felt like commuting 2 hours each way. But I'm also spoiled by a real estate market where you can a decent house for under 200k, sometimes close to 100k, where I'm living now.

thisisdallas 18 minutes ago 0 replies      
I definitely agree with the OP. If I could work remotely I would in a heartbeat. Be that as it may, I do understand how a lot of companies/startups would be hesitant to offer a remote worker a full time job plus benefits. In all honesty, if I owned a company, I would most likely prefer on location workers than remote workers.

Also, I didn't see anything in the post about the great local coffeeshop scene in Louisville :)

pavanky 1 hour ago 1 reply      
> The cost of living in Louisville is 7.6% below national average. The cost of living in NYC is 123.8% above national average. In other words, I'd need to earn over twice as much money to maintain the same quality of life in NYC.

This is false. You only need to make twice as much as you are spending. I don't think anyone making something like $100k in Louisville would be spending all their money and then would need to make $220k in New York.

emiller829 2 hours ago 0 replies      
Put in different terms, this means Louisville COL is 92.4% of national average, and NYC is 223.8%.
andreipop 19 minutes ago 0 replies      
Where did you find stats on average cost of living above national average?
electic 1 hour ago 0 replies      
I am not terribly sure why this needs to be an article. If you don't want to work somewhere or for someone, be respectful. Kindly pass. Being declarative, boastful, and at times a bit cocky is not a good quality to broadcast to all employers.
digitalengineer 2 hours ago 1 reply      
I agree, but don't a lot of new opportunities arise from the people you meet (by change, via friends or whatever) IRL?
bjhoops1 1 hour ago 0 replies      
Kudos on the "frind a way to make workouts work into your schedule" - I used to work at a company that serviced the health club industry, so we all got a free membership to one of our customer's gyms just down the road. All the developers would go work out over lunch (and contrary to stereotypes, a lot of them were jacked). That routine was fantastic and is the thing I miss most about that job. It also made everyone more productive in the afternoon.
lerouxb 31 minutes ago 0 replies      
But... how do you deal with living in a deeply red state? ;)
32bitkid 1 hour ago 0 replies      
Good article but I would quibble on the point about "time ≠ money". To me, one has a finite amout of time, that must be "spent" no matter what you do, the goal is to maximize the "trade" value for your time. With my job, I trade my time for money â€" which I can then turn around and trade money for someone else's time. With my hobbies, I trade my time for for skills/knowledge. When I'm relaxing, I'm trading for my own sanity. You can't really "waste" time; instead of you simply trade it for something of little or no value.

In that sense, money is time... and time can be represented as money.

bjhoops1 1 hour ago 0 replies      
God, this is so annoying! Literally 100% of the recruiter emails I get are for locations far from my home of Kansas City.
fasouto 2 hours ago 1 reply      
100% agree, I moved from Switzerland back to Spain for similar reasons.
Now I'm freelancing for a couple of companies in NYC and my quality of life and productivity improve a lot, the only drawback it's the 6 hours of difference.
Making Facebook's native mobile app faster using HTML5 sencha.com
103 points by steffenhiller  3 hours ago   50 comments top 14
brianchu 2 hours ago 2 replies      
I ran the HTML5 app on my iTouch 4G running iOS 6 (roughly equivalent to iPhone 3GS) and compared it to the native FB app. The HTML5 app had noticeable lag in the swipe transitions. It also crashed once when loading a photo (only once though). Not to mention that they implement almost everything differently and leave out 90% of FB's features.

That being said, it was really smooth on my iTouch 5G.

The demo HTML5 app also runs in Safari. The problem is that Safari's Nitro JS engine is much faster than the older JS engine used in a UIWebView (I think the restriction is supposedly due to security).

For the moment, native is still the way to go, IMO. But I've always believed that at a certain point iPhones/Androids and their browsers will be powerful and efficient enough to negate any performance drawbacks to HTML 5. I think that point might arrive by the iPhone 6 or so, when developers might feel comfortable dropping support for the iPhone 3GS and equivalent. In fact, many devs are already dropping support for the iPhone 3GS.

marknutter 2 hours ago 1 reply      
The future is bright for HTML5 apps, clearly. There will come a time when everyone's phone is fast enough to run apps like the FB clone Sencha made and the need for native apps will start to diminish. However, we're still in the transition period where there are a sufficient number of older phones on the market that don't run HTML5 apps well, so until they are filtered out your best option is still native.

I do hope this app silences the HTML5 critics out there who say you can't get a good UX with HTML5, though. The proof is in the pudding.

micampe 2 hours ago 4 replies      
Why do we see plenty of articles saying that HTML5 can be as good or better than native code and no actual applications doing it?

Facebook and Google tried and miserably failed, LinkedIn and Twitter are probably the ones closest to actually doing it, but users still prefer the native version, why?

One I think is a big reason is clearly visible in the video: scrolling physics are different. It's annoying and feels wrong and I think people notice even if they probably don't know how to describe it.

Maybe with this Sencha contest we'll see some good ones.

andrewmunn 30 minutes ago 0 replies      
I'd like to clarify one thing. The "native" Android app that was tested, isn't actually native. Native newsfeed shipped in Facebook for Android 2.0, but 1.9.2 was used in the comparison. Thus, the comparison was between two html5 implementations of newsfeed. That said, I'd love to see a side by side video with Facebook for Android 2.0.
programminggeek 1 hour ago 1 reply      
HTML5 is cool and you can do a lot with it, but it has some very real drawbacks - like Android.

Also, if you are doing a bunch of optimizations to make it fast on HTML5, then you're basically doing the same work as writing a native app, so what are you gaining by doing a HTML5?

Seriously, at some point you can get a better user experience, have better access to native API's and can really leverage the full abilities of the device by going native. So, you know, go native.

Disclaimer: I have wrote HTML5 mobile apps and I think it's a great developer experience, but it feels worse as a user.

eatsleepdrink 1 hour ago 2 replies      
Nitro Javascript engine? It could be an important difference between this test and FB's app. Safari gets it. It seems ambiguous still whether UIWebView users get it.

A more apples-to-apples comparison would be to put it in a iOS app running UIWebView and see if the performance is maintained. I'd certainly be interested in the results.

matwood 2 hours ago 0 replies      
We saw the latest generation of mobile devices â€" running at least iOS 5 or Android 4.1 â€" push ever increasing performance and HTML5 implementation scores.

Do the new native FB apps only run on iOS5+ and Android 4.1+? HTML5 may be ready on those platforms, but Android still has a lot of 2.x phones floating around. How do the HTML 5 benchmarks for iOS 5 run on the original iPhone 4?

kaolinite 2 hours ago 2 replies      
A lot of the points that they make in the video are just flaws with Facebook's implementation of the app, rather than being a point for HTML5 or a point against native.

Truth is - HTML5 apps can be made to perform well but there are limits. Battery life suffers and you may find in future that the cool animation/whatever you wanted to add in is too laggy (especially on older devices).

spydum 1 hour ago 1 reply      
I suspect they misunderstood the "HTML5 is not ready" statement. Indeed, HTML5 can perform, and the future is bright. However, as plenty of people in the comments here have mentioned, for mainstream devices.. it's not ready. The frameworks are still coming up a learning curve, the hardware devices out there are still struggling to adopt proper HTML5 support and decent performance. Those points alone lend credit to the fact that it's just not ready.
level09 1 hour ago 1 reply      
This is cool, however, I'd say HTML5 has a bright future regarding web-based apps, or apps with a specific use case where you pull some data and display it in a list/table view etc ..
HTML5 will never be as capable as native if you have many other use cases (ex: image/video processing, music recognition ) ..
realrocker 2 hours ago 0 replies      
Where are the benchmark reports on phone's from 1.5 to 4.1? 64% of android phone's are still pre-honeycomb(3.0). HTML5 on Android is good now but it sucks on those earlier phones. I am sure Facebook has to take care of everyone.
tterrace 1 hour ago 2 replies      
They take offense to Zuckerburg's "HTML5 isn't quite there yet" comment but in order to keep their implementation quick they had to build a custom iframe framework in addition to their TaskQueue and AnimationQueue implementations to replicate the fb timeline. It seems like that was part of Zuck's point - why would a company with a deadline take on all that technical debt to replicate things that you essentially get for free on a native platform?
steffenhiller 1 hour ago 0 replies      
Here's an interview Robert Scoble did with the guys from Sencha about their Facebook app: https://plus.google.com/+Scobleizer/posts/ZtnZNrCfWv6
nathanpc 2 hours ago 1 reply      
HTML5 can be fast just like Native applications, but you need to know how to make it faster. Hopefully we are going to get more awesome libraries and frameworks like Sencha Touch to make our life easier.
Why I learned to "make things" 37signals.com
30 points by mh_  1 hour ago   2 comments top 2
kevinconroy 1 hour ago 0 replies      
This is great. I wish more business analysts had this mentality of "it's faster to learn it myself than wait for a developer." That's a quality to look for when hiring.
why-el 30 minutes ago 0 replies      
A little meta, but this design makes it hard to comment on posts! I spent about a minute trying to find the comments section, which is a click away, as opposed to a simple scroll.
Raspberry Pi Foundation launches the Raspberry Pi Store raspberrypi.com
73 points by Ecio78  4 hours ago   18 comments top 14
ChuckMcM 16 minutes ago 0 replies      
It is interesting to see the resistance to selling stuff "on Linux" here. When the Apple II came out "kids" made games and software for it, and sold it in plastic baggies with a floppy disk and a photocopied "manual". Those of us in the community thought this was a great idea, not because we bought everything that came out, but the notion that you could spend your time working on this awesomely cool stuff and if other folks liked it enough what you were producing they would buy copies from you. Heck you could even make a living on writing software for people.

That made a lot of things you take for granted today possible. And it made total sense, here was someone spending their time writing code to do something that you wouldn't have to spend your time doing. You could write it yourself or you could leverage their effort by buying a copy of their stuff. That infused money into the field which gave people the freedom to invest their time into building amazing things.

drzaiusapelord 17 minutes ago 0 replies      
On a tangential note, are they ever going to update this thing with a faster SoC? Its been a year since the design was finalized. I just as an android dev board that blows this thing away for not much more. Not sure what the allure here is at this point. What's the Pi's roadmap, if any?
chopsueyar 3 hours ago 1 reply      
Too bad the store is running on a Raspberry Pi.
Newky 2 hours ago 1 reply      
The donations system is great, but I would have preferred to see a push for a community built up around free and open source software.

The idea of a young person beginning to code and polishing their application and uploading and getting some money in donations. I'm more likely to donate to a great attempt at a project by a young person than I am to buy software on Linux. Raspberry Pi Store could have been the communities push to loads of great community driven open source projects.

heymishy 3 hours ago 0 replies      
I believe its just a app store rather than a hardware store.. They already have a merch store (http://www.raspberrypi.com/) and links to their suppliers.

As far as I know they don't want to sell direct through their only store..

davidcollantes 3 hours ago 0 replies      
They are selling everything else, but Raspberry Pi. At least that is what I saw. Has anyone seen the little machine at their store?
dutchbrit 3 hours ago 0 replies      
Will be buying a MPEG-2 license key this week - I'm currently only getting a "It works!" message on their store, but when I visited it yetserday, I couldn't find what payment methods they accepted before filling out the whole checkout process. Anyone know (I didn't finish the checkout process)?

-- EDIT --

Looks like I was confused with their other store. This indeed just looks like an App Store :)

e1ven 3 hours ago 0 replies      
yarrel 2 hours ago 0 replies      
Remember, kids, sharing is bad.
muyuu 2 hours ago 0 replies      
I'd much rather do without the IndieCity client to be honest.
frontsideair 3 hours ago 0 replies      
elbac 2 hours ago 1 reply      
But does it actually sell the Raspberry Pi??
obilgic 3 hours ago 0 replies      
Its good to know that it works.
Why 256 bit keys are large enough stackexchange.com
177 points by mef  7 hours ago   83 comments top 16
mjs 5 hours ago 4 replies      
Doesn't that Schneier quote only apply to symmetric algorithms (e.g. AES)? I thought asymmetric algorithms (e.g. public/key systems like RSA, as in the original question) have completely different characteristics and rules.

"NIST key management guidelines further suggest that 15360-bit RSA keys are equivalent in strength to 256-bit symmetric keys."


UnoriginalGuy 6 hours ago 11 replies      
I wish I knew more about encryption. Unfortunately it isn't a very accessible area, even if you have a degree in CS you aren't really qualified to even touch the stuff, you need a maths degree at the very least.

Plus every time anyone brings up the subject the answer is always the same: "If you roll your own crypto you're an idiot." Which is not very encouraging. Likely why crypto' libraries are so antiquated and terrible.

casca 6 hours ago 2 replies      
The reason 256 bit AES keys are large enough is that in order to brute-force them, one of 2 things needs to happen:

(1) We need to build computers out of something other than matter


(2) A weakness in AES must be discovered that will need to reduce the search space significantly

We can disregard (1) as it will probably require changing (almost) all encryption algorithms that we currently use. (2) will most likely break all key-lengths so any use of AES will be weakened.

bajsejohannes 6 hours ago 1 reply      
This a very good explaination of why 256 bits is enough against a brute force attack. The goal of breaking cryptographic systems is of course not brute force, but to reduce the actual key space you have to search. This is frequently measured in how many redundant bits you can shave off. So for AES, we might find in the future that 256 bits isn't enough after all.
ars 6 hours ago 1 reply      
One reason for extra large keys is for headroom in case of partial breakage.

Usually when a cipher is broken, they don't break it fully, but rather reduce the keyspace. By making your starting keyspace even larger you make even a broken cypher secure (up to a point).

ppierald 17 minutes ago 0 replies      
I have to note that the length and strength of your AES key is no different than the complexity of your password. Once either is compromised, then you are totally exposed. So your attacker will take the path of least resistance. He can either brute-force the key or he can just break into your server and steal your config file or his you over the head with the proverbial $5 wrench.
hartror 6 hours ago 1 reply      
Wow computer science meets Greg Bear, I think I need to now go write a short story featuring a supernova powered super computer.
dfc 2 hours ago 0 replies      
For further reference and a more detailed discussion of algo / key length selection take a look at NIST's Recommendation for Key Management [1], specifically section 5.6 "Guidance for Cryptographic Algorithm and Key-Size Selection."

[1] http://csrc.nist.gov/publications/nistpubs/800-57/sp800-57_p...

Tichy 1 hour ago 1 reply      
" To record a single bit by changing the state of a system requires an amount of energy no less than kT, where T is the absolute temperature of the system and k is the Boltzman constant."

How does that work? It seems odd that is is independent of the size of the system.

donpark 2 hours ago 0 replies      
IMO the most vulnerable part of AES is not the side-channels but key generation. Compromise the source of entropies, preferably only for processes with specific signatures, just enough to be crackable on-demand then capture everything on the wire remotely.
cjg 6 hours ago 1 reply      
Something that many of these answers fail to address is that a 256-bit key isn't big enough, if you can do 2^128 computations.

This is due to the probability of key collision. See http://en.wikipedia.org/wiki/Birthday_attack

Not that I'm saying 2^128 calculations isn't a lot, but compared to 2^256, it's a tiny speck.

mtgx 6 hours ago 1 reply      
So even a quantum computer wouldn't be enough then?
ck2 5 hours ago 0 replies      
128bit will be crackable in 2030 with government-sized resources, last time I read about it?

You can be sure taxdollars are powering mind-staggering supercomputers that the public doesn't know about right now.

pfortuny 5 hours ago 0 replies      
I honestly think that the title should be '256 bits are enough against brute-force' because otherwise this is way way way misleading.
oellegaard 4 hours ago 1 reply      
"640K ought to be enough for anybody." - Bill Gates, 1981
NicoJuicy 6 hours ago 2 replies      
Just use the slowest algorithm to delay brute-force attacks :)
The Lambda Calculus stanford.edu
69 points by infinity  4 hours ago   7 comments top 5
sb 1 hour ago 1 reply      
Nice article (the Stanford Encyclopedia of Philosophy has many more, btw.), but I like the "Introduction to Lambda Calculus" by Henk Barendregt (one of the people working in Lambda calculus, see for instance the citation to his book "The Lambda Calculus: Its syntax and semantics." in the references), which has the added benefit of being free:

(also covers typed lambda calculus AFAIR)

knowtheory 37 minutes ago 0 replies      
The Lambda Calculus is more widely applicable than most people know too.

One of the dominant modeling paradigms in formal semantics (e.g. understanding the meaning of human language) is built around a typed lambda calculus called Montague Semantics (see http://plato.stanford.edu/entries/montague-semantics/ )

why-el 1 hour ago 0 replies      
Does anybody know whether this is a good introduction for someone who plans to go over the Lambda Papers in detail in about two weeks?
hsmyers 3 hours ago 1 reply      
Very nice article. The HTML version is free, the .pdf version which will be available after the 21st will cost you $10 a year---all things considered, a useful service at a very reasonable cost.
rhcpfan1 2 hours ago 0 replies      
You can see where the name 'Y Combinator' came from. Thanks.
Speeding up HTTP with minimal protocol changes jgc.org
87 points by jgrahamc  5 hours ago   20 comments top 6
samwillis 4 hours ago 2 replies      
I like this, it seems so much more clean than SPDY, HTTP really should stay a text based protocol. My understanding for the design of SPDY was that by forcing TLS it ensured that any proxy server in the middle wouldn't interfere or be "confused" with the connection.

What would an existing proxy server (i.e. doesn't understand HMURR) do with a connection that looked like this?

hobohacker 16 minutes ago 1 reply      
It's unclear to me what advantages this proposal has over a HTTP/2.0 proposal using HTTP Upgrade. AFAICT, the client is unable to rely on HTTP/1.2 support in the first roundtrip. Therefore, it cannot begin utilizing the new proposed features. Relying on the HTTP/1.2 HTTP-Version within the Request-Line and Status-Line strikes me as less safe than trying to use the Upgrade header to attempt to upgrade to HTTP/2.0, as it seems much more likely for intermediaries to have broken HTTP-Version parsing than broken Upgrade support. In contrast with this proposal, when using the Upgrade header, there is much more freedom to change the wire level representation of the protocol. And if you're going to do HTTPS anyway, using TLS-NPN to negotiate a completely wire level representation (without an additional roundtrip over the TLS handshake roundtrip[s]) likewise enables more freedom to add features.

It seems like the main reason to prefer this proposal is if you do not want to write another parser for HTTP/2.0 and think that new features afforded by a different wire level representation are not worthwhile.

Another thing to note is that this proposal effectively adds on multiplexing without prioritization. Prioritization is fairly important, otherwise the client application has to do application layer throttling in order to reduce contention. Adding prioritization would help obviate the need to make the link utilization vs contention tradeoff.

lucian1900 4 hours ago 0 replies      
Transparent proxies, stupid antivirus software ... There's no end to the amount of crap that interferes with HTTP. These days, the only way one can get anything through is over SSL.
rwj 17 minutes ago 2 replies      
I wonder why no one has defined a multi-part message format. The server would deliver a single file, which would start with the HTML and be followed by images and other assets. This approach should play nice with all the proxies (which would see a single octet stream), and, since the pipelining multiplexes everything on a single connection anyway, deliver similar performance.

I understand that no one wants to define a new format, but I don't see how it is more difficult than defining a new protocol.

asdfaoeu 4 hours ago 1 reply      
I don't really see the point. Spdy is already supported by major browsers more than this would ever have. Why have half the features when you can have them all? Also browsers would need new APIs to deal with getting the data from slicing as it doesn't seem to properly support something like web sockets (no multiplexing of the input, does spdy support web sockets?)
pibi 1 hour ago 1 reply      
Maybe better without Slice-Length header for chunked encoding to avoid buffering on web server.
Darpa begins work on 100Gbps wireless tech with 120-mile range extremetech.com
34 points by Libertatea  3 hours ago   9 comments top 5
leoedin 1 hour ago 3 replies      
The thing to remember with all geosynchronous satellite communication is latency. It's terrible. By virtue of being 36,000 km away, you fundamentally can't have a communication time of less than 1/4s. That's fine for moving large numbers of bits (video transfer) but terrible for 2 way communication. Without any other delays, it takes over 1/2 a second between sending a request and seeing the result.

Perhaps the protocols they're developing will have use for ground level civilian communications, but it's unlikely that satellite based internet will ever see widespread adoption in the west because of latency.

Symmetry 1 hour ago 0 replies      
"One day, you might even have a 100Gbps wireless link from your home to your ISP."

Probably not, there's far less spectrum reserved for civilian uses than for military per capita.

rjzzleep 2 hours ago 0 replies      
is it just me, or do other people get bored by "begins work on" titles too?

first of all there's probably more than darpa working on it. second of all darpa is not working on it(yet)? they want people to come in and help design it for them. hence the link.


but as always, please correct me if i'm wrong

DasIch 1 hour ago 0 replies      
Hum, is bandwidth really such an issue when it comes to UAVs? A video stream will consume quite a bit of bandwidth granted but I'd imagine latency to be a much more serious issue. Who cares whether you have a HD video stream if the stream shows you what happened half a second ago?
gerhardi 3 hours ago 0 replies      
Wow.. this certainly sounds like a big leap, but I think that this will not succeed during the next 10 years. This would allow an whole army of remotely controlled drones with realtime sensor data and high definition video to operate within a quite large area. How many UAV:s operating within the same area can be nowadays handled simultaneously through one "command center"?
Simplify Your Life, Hide Your Bookmarks Bar andrewscala.com
9 points by agscala  1 hour ago   4 comments top 4
progrock 5 minutes ago 0 replies      
I have a collection of bookmarks, that I haven't quite gotten around to organising! And they span about three machines and four browsers. In their current state they aren't brilliantly useful for me.

I've always thought that bookmarks are a great idea. It's the interface in the browser that sucks. I think people use tabs a substitute for bookmarks, because the interface lacks. Sometimes it's nice to have a visual prompt.

On the other hand what's the point of wasting browser chrome with a bookmark that you only click on once in a blue moon? You'd be better off using that space to order most visited sites, or list your history, or a filtered history.

The one time the browser bookmark bar was invaluable for me was when the my keyboard broke on my computer. I could actually get quite far without it and with the bookmarks.

There's another issue here of info-hoarding. I met someone recently that saved and tagged a reference to pretty much everything he read. He seemed to think it was useful for him. Do we need to keep emails etc? Do we keep this stuff because it's of low cost. Or it costs more effort to get rid of it?

Freesearching requires reliance on your memory. Sometimes we need prompting or signposting. Search directories versus search engines.

If I read something on the web, like a tutorial, and I think it has value. What chance do I have of remembering every domain/url, or even the magic keywords that got me to the article in the first place. That may not lead back to it in the future. That's when I need a bookmark. I like to lightly tag them, which is possible in Firefox. Chrome feels lacking.

In Firefox you can use the awesome bar, start with a * and you will only search your bookmarks. I use that trick quite a bit.

I really ought to get around to aggregating my own bookmarks into a useful format.

I just wish the browser would do something smarter with my history, and marks. And leave window management to my window manager. I've tried lots of the tab extensions for Firefox - and I've found most of them lacking.

esolyt 5 minutes ago 0 replies      
This is actually common sense.

In fact, Chrome was based on this idea and it comes with bookmarks bar hidden by default.

untog 27 minutes ago 0 replies      
I've long since forgotten bookmarks and just learnt to trust Chrome's address bar. Even if I can only remember part of a title it'll manage to surface a page I've visited before.
rsobers 26 minutes ago 0 replies      
I love the idea. I'd have to turn off auto-complete, too since hitting CTRL-L then typing "n" <return> would take me right to Hacker News. Muscle memory. I totally check sites out of obligation/procrastination.
Ruby, Smalltalk and Class Variables patshaughnessy.net
11 points by lest  1 hour ago   2 comments top
why-el 22 minutes ago 1 reply      
This was also discussed five years ago in this great post by Martin Fowler: http://martinfowler.com/bliki/ClassInstanceVariable.html
Why is Learning to Code So Hard? startuprob.com
10 points by startuprob  1 hour ago   15 comments top 12
ams6110 21 minutes ago 0 replies      
Sudden leap in difficulty â€" Nearly everyone noted that at some point in their learning they stumbled upon a sudden leap in difficulty that crippled their ability to grasp the follow-on concepts

I have hit this in every subject I've studied where I wasn't really motivated to learn the material. The reason this happens is that you reach a point where suddenly all the basic concepts start supporting the follow-ons. If you never really learned the basics, you will be lost. For example this happened to me with foreign languages. I had no real interest in learning French, but a foreign language was required in school. The first year was easy: basic vocabulary, stock phrases, and simple rules of grammar. The second year was not too bad either. But I never really learned anything... I would cram before exams and get decent scores, then promptly forget the material. Third year, when you actually had to put it all together... I was sunk.

If you're studying something, and can't motivate yourself to really learn the basics, you can only go so far. If you're studying computer science because you heard the jobs pay well, but you don't really care about learning the first and second material, you will hit that "leap of difficulty" at some point.

macavity23 39 minutes ago 2 replies      
For the same reasons that many people find learning mathematics so hard: it requires abstract thinking and the ability to layer abstractions on top of one another.

I think anyone can learn to code, or learn maths, but there's no doubt that some folks are MUCH better predisposed to it. That said, some good tips in the article.

sek 11 minutes ago 0 replies      
I found that I underestimated how hard it was for me in the beginning.

I had to learn C in university and I applied for BA first and thought coding is for monkeys. I hated it, I didn't understand anything but I struggled trough. At some point it made "click" and I loved it ever since.

The funny thing is, afterwards I was biased in believing coding is easy and it has been for me from the beginning. It took me a while to realize how hard it was for me to start.

Anybody here with a similar experience?

taeric 7 minutes ago 0 replies      
Why do we think that coding is at all unique in this regard? Have you looked through your standard fare cook book? The leaps from step to step are sometimes astounding. Yet folks are usually able to pick that up. Same for sewing. Show me the typical sewing pattern and it looks like someone dropped some lines somewhere. How is anyone able to learn that?
bradleyland 33 minutes ago 0 replies      
I tend to be a bit of an evangelist in whatever endeavor I'm currently engaged. I'm a big mouth. There, I said it. With that out of the way, this tends to put me in the teacher's seat once someone says, "Ok, Brad, show me what's so cool about this thing you're always talking about."

What I've observed is that there are two types of learners. One set of learners starts from a set of instructions. These instruction sets are simple, enumerated lists. The learner executes the steps and looks at the outcome. As they advance, they might begin to explore deviations in the steps. Reasoning like, "What happens if I swap steps 2 and 3?"

The other type of learner cares less about the steps and more about the concepts behind the steps. They begin by asking, "Why do I do step 1" or "How does step 1 work?"

Everyone I've taken under my wing who engages in the enumerated list approach hits a wall at some point. When the complexity of the enumerated list extends beyond their ability to tweak inputs, they become frustrated, and ultimately give up.

The latter group tends to get further, but it's not a free pass to stardom. Many still hit a conceptual complexity wall where they fail to grasp some of the more abstract concepts.

The former group far outnumber the latter, in my experience. I'd posit that what makes learning to code so hard is that it is more accessible to a means of learning that fewer people possess.

dreamdu5t 40 minutes ago 0 replies      
Why is learning to be an architect hard? Why is learning to be a lawyer hard?

Because it's f*cking complicated!!!

dccoolgai 14 minutes ago 0 replies      
Why is learning to read and write so hard? It seems natural to you now, but when you were in 1st grade, it was a pretty big challenge...It's not that it's "hard" or "easy" - the most interesting thing is that you chose to do it. Maybe a better question is "Why don't more people choose to learn coding?".
KeepTalking 17 minutes ago 0 replies      
Coding requires effort, which is acquired like any other skill such as reading/comprehension. Many people try to run before they even learn to walk and this is when the sudden leap in difficulty is encountered. It took me years( read - coding time and effort) to move from novice to an intermediate programmer and this occurs each time you want to move up on your skill level. You need to commit effort, and no doubt you are going to fail before you succeed.
Pair programming, code reviews , mentoring etc ...appropriate to your own individual learning ability is paramount for success.

I personally found:
1. Code imitation - coupled with understanding
2. Code reviews - of a next level programmer
3. Blogging/Q & A(Stackoverflow sort)
as important in becoming a better programmer.

ChrisBanner 36 minutes ago 1 reply      
Conversations about "learning to code" frighten me because they overlook a necessary foundation in engineering concepts like abstraction and the value of simplicity. If you're looking to hire software developers, stop interviewing "coders".
bennyg 30 minutes ago 0 replies      
I think he hit upon the main point at the very end. If you wanna' learn something, and I mean really learn it, you've gotta' be invested in it - and there's no better way to do that then building your own projects. Saying I want to learn to code, and having to learn to code to see your idea come alive are two different animals of motivation.
yarrel 24 minutes ago 0 replies      
"Too many developers want to stay in their comfort zone."

Too few employers are willing to pay for learning and evaluation.

gmkoliver 35 minutes ago 0 replies      
The essay doesn't say when those experienced programmers started learning to code.
Review our startup Farmly.net - buy fresh food in the UK farmly.net
30 points by sensecall  3 hours ago   29 comments top 21
EwanToo 11 minutes ago 0 replies      
You have to make a really quick and easy search on the front page which lets me check out which suppliers are available in my area.

Otherwise, you're just wasting everyone's time.

having signed up for the product since I want to be nice, and I've found all I've done is sign up for a mailing list of a product that might launch at some point in the future.

This isn't a startup to review or comment on, it's an MVP landing page test.

threedaymonk 11 minutes ago 0 replies      
I'm not sure that "buyer" is the best word to use: it often has a specific nuance (someone who arranges ordering for a brand or retailer). Maybe it's just me, but I initially thought I was in the wrong place when presented with a button that said "I'm a buyer". Perhaps "shopper" might be better.
thisone 1 hour ago 0 replies      
I'm part of your buyer market here I believe, as I've just started receiving fortnightly deliveries of organic produce from a local box scheme and I spent a heck of a lot of time recently trying to find local lamb and beef and running into dead ends left, right, and centre.

That being said, first of all and completely off topic, I appreciate you're in Heslington (York alumnae and still living in the north east). Perhaps you could consider spelling out on the site if you are planning on being a middle man, or an information centre, or a facilitator.

Will you show information for local box schemes, local farm shops, markets, independent cafe's?

I'm quite interested in seeing what you're trying to do, since I've recently had such problems searching for box schemes in the North East.

bdfh42 3 hours ago 1 reply      
First criticism - I have to create an account with you guys to see if there is anything of interest to me in my part of the UK.

Any chance of finding some way of indicating the density of local suppliers before I sign up?

I would prefer to use OpenID or OpenAuth to creating yet another username and password combination plus I have no way of telling if you will keep them secure.

meaty 2 hours ago 1 reply      
I'm not signing up unless I can see what I'm getting first (like all the other vendors allow)

Also, you're fighting the likes of Ocado, Abel and Cole, Waitrose there. That's not a fight I'd walk into myself.

stfu 44 minutes ago 1 reply      
Just a random suggestion: What I would want is a "system" to replace any snacks I eat with fresh fruits. Meaning, I want the same level of convenience.

I want it organic, sliced, and delivered twice per week. I know that this sounds like a logistical nightmare, but that would be something with a crystal clear positioning.

Mz 36 minutes ago 0 replies      
I have just subscribed to get updates and I am not even in the U.K. I hope you do really well. Like others here, I am curious as to your exact business model. It isn't clear to me what specifically you will be doing. I hope this kind of business becomes more common. It is a potential antidote to some of the problems caused by largescale modern farming and general commercialization of our food.
alexobenauer 2 hours ago 1 reply      
Love the design of your page.

However, I shouldn't have to signup to see if there is anything useful beyond the signup page; to see the actual content. You've lost me right there. I'd bet if you let the content show before a signup, you'd get far more (and far more meaningful) signups.

twelvechairs 1 hour ago 0 replies      
Love the idea. Can't tell enough about how it works without signing up (I haven't).

Key question for me - I can't see what I'm buying so how can I be sure that it is good quality/fresh? I assume some kind of buyer-rated reputation system for producers would be useful for this kind of thing? Would like to see how you resolve this.

Also - I can't tell whether you or the sellers are supposed to handle the actual transportation of goods.

luxpir 43 minutes ago 0 replies      
Congrats on a solid idea/execution combo. I suppose we need to support UK startups as much as we do our local suppliers. Fingers crossed I think you might even manage to win over the British luddites and naysayers with this blend of old and new!

Design-wise I can only say that it matches the expectations of consumers in the demographic pretty much spot on. And I like it :)

Would be good to follow your progress so will stick to Twitter for now, but in-depth blog posts would be welcome if you find time.

CookWithMe 1 hour ago 0 replies      
Like the idea!

In addition to what others have said: I find the overall design good, but I don't like the stripes/greyness over the food image (http://www.farmly.net/images/home-banner.jpg) at all. Getting the color of food images right is always tough, but this definitely fails. For some images, e.g. the strawberrys, it may be fine because the red is very saturated, but others, like the cheese or the cupcakes... they look grey / too dark, which is not what food should look like.

Also, I'm not sure if the transition helps. Makes it harder to look at the images and takes the attention away from the text.

Good luck!

bencoder 2 hours ago 0 replies      
Like others have said. I want to know if there's any local suppliers before signing up.

This isn't useful to me because I'm not in the UK currently, but my father would be interested, so I wanted to see if there's anything near him before I send him the link. Not interested in signing up to find out and plus I'd have to enter a false (my Dad's) postcode to do so.

cpursley 1 hour ago 0 replies      
Interesting. I've had a similar idea for the US and actually own farmersstand.com (haven't done anything with the domain yet).

I'm not sure people will order local food online in the US, but I think a case can be made for a tablet app that allows the user to sit on their couch and browse local farmers and read about a specific farmer's growing methods, farm photos, selling locations/options, etc. The end goal of the user would be to meet up with the farmer at a market, csa, ect to make a purchase.

Not sure how to monetize or populate it with farmers. Two-sided marketplaces are difficult.

user24 1 hour ago 0 replies      
There's no information on this site, it's just a signup page. How does(will) it work? What do(will) I get? Tell me how awesome you are. Make me want it. Excite me.
tomsinger 2 hours ago 1 reply      
It looks nice and I honestly love the idea (I'm UK based) but you have no contact information, use a service to hide your registration information and have no privacy policy yet you want my name, email address and postcode? That's not a fair exchange.

What is the legal status of your startup as this will have an impact on the information you legally need to have on your site.

kaolinite 2 hours ago 0 replies      
Signed up for the mailing list. Really hope this succeeds! Design is great by the way.
Fletch137 2 hours ago 0 replies      
I agree with what others have said, and on the signup front, I think a facebook login might be a good idea. You could then pull the location info that you need, reducing the info the user needs to put in to practically nothing. Authorise facebook and start buying almost immediately.
GFischer 3 hours ago 1 reply      
I like your landing page.

Maybe you should have titled it Ask HN: Review our startup, Farmly.net - buy fresh food in the UK (or something along those lines).

Plenty of guys from the UK here (I'm not :) ), good luck !

user24 1 hour ago 0 replies      
the signup email field is called "EMAIL". If you called it "email" instead, you'd benefit better from browser autocomplete.
AffableSpatula 2 hours ago 0 replies      
How much overlap do you think your company has with Sustaination (http://sustaination.co) ?
Samsung Phones: Every app has full memory access xda-developers.com
73 points by itry  4 hours ago   24 comments top 5
stusmall 57 minutes ago 6 replies      
I currently have an S3 and this isn't the first serious exploit I've come across for it.

Does anyone have any suggestions for a serious secure phone? I don't need all the bells and whistles and don't install many apps. Mostly just email, text, and web browsing.

JimmaDaRustla 2 hours ago 1 reply      
Now all I can think of is #droidrage
drivebyacct2 2 hours ago 1 reply      
How was this even posted? It's the exact same link as yesterday in addition to the other link about this yesterday.

Ah, I see the original has an anchor in the URL: http://news.ycombinator.com/item?id=4928277

berntb 2 hours ago 2 replies      
As an Android newbie -- how easy is it to get out kernel patches to [all these millions of users'] phones?

(No, I'm not a black hat -- I don't have a hat of any colour.)

Haskell: Let the Type Inferencer Work for You mariosangiorgio.com
6 points by msangi  45 minutes ago   2 comments top
crntaylor 15 minutes ago 1 reply      
I don't get this line -- "the Haskell compiler will complain because we still miss the definition of the type of the function."

That's not true. The compiler will give the function the most general type it can infer, which in this case is

    holds :: Eq a => UnionFindElement a -> a -> Bool

without you needing to specify it in the file.

The point of the article is sound - using the interpreter to ask for types is a great way to work (and often leads to surprising realizations which can lead you to generalize and abstract your code), but the reasoning is spurious. Most of the time, you don't need to supply types in Haskell, as the compiler is perfectly capable of figuring them out for itself.

The Fast Fourier Transform jeremykun.wordpress.com
84 points by signa11  8 hours ago   6 comments top 4
OldSchool 22 minutes ago 0 replies      
Great content! Nice mix of math, backstory and practical examples along the way to keep the reader engaged.

I was a little concerned that the Python cmath library might be written in Python but from what I can tell, it's native-code from C.

Hitchhiker 7 hours ago 0 replies      
" As noted by his former pupil and collaborator André Deprit, Lemaître was one of the inventors of the modern Fast Fourier Transform technique.

Lemaître was well ahead on his time regarding machine computing. As early as the thirties at MIT, he used the machine perfected by Bush to solve the Störmer problem. "

source : http://www.uclouvain.be/en-316446.html

rodh 6 hours ago 2 replies      
Wow. I hadn't come accross this blog before. It has a fantastic wealth of content, all relevant to my interests. Very impressed.
ctchocula 6 hours ago 0 replies      
Seems like a great blog. I'm trying to get through The Road to Reality by Roger Penrose that's supposedly capable of giving a layman an idea of the math and physics behind modern physics including string theory, but I'm finding Jeremy Kun's treatment of some of the same mathematical concepts using animation and colloquial language to be easier to understand.
BBC Micro on an FPGA mikestirling.co.uk
60 points by jacquesm  6 hours ago   18 comments top 4
JonnieCache 2 hours ago 1 reply      
More BBC fun: Here's a video of Vince Clark from Depeche Mode/Erasure in the mid 80s demonstrating midi sequencing on the extremely expensive UMI sequencer, which was basically a BBC master with a breakout box for midi.


DanBC 5 hours ago 3 replies      
Here are some more links to FPGA implementations of other home computers.

Commodore 64:

Commodore PET:

Mac Plus (incomplete??):

Sinclair ZX81:

Sinclair Spectrum:

MSX: (commercial product, I'm not sure if there's any code downloads)

The popular music ICs from a variety of machines in one box:


Atari ST: (http://www.experiment-s.de/en/)

Atari bits n bobs (http://hardware.atari.org/vhdl/vhdl.htm)

A variety of different systems - Videopac; Adventure Vision; Colecovision; Bally Astrocade: (http://www.fpgaarcade.com/platforms.htm)

jacquesm 4 hours ago 2 replies      
The BBC micro was - and is - in many ways my favorite computer, ever. It had a structured basic, half decent sound and video, was expandable and had a fantastic keyboard.

My last one blew up a few years ago when I tried to see if it would still work (capacitors in the supply had gone, took the board with it). So this project is really tempting for me, I'll probably see if I can get this to work.

FPGA's are interesting, a kind of half-way point between software and hardware.

meaty 3 hours ago 0 replies      
This is great. I've been considering building a BBC master into an old ThinkPad chassis for about 10 years now. There's absolutely no way an efficient unit could be produced with "normal" beeb discrete hardware so FPGA would be considered. This is motivational at least!

With 16% cell utilisation, I reckon you could get a second processor and discrete TFT driver in there as well.

Help the Internet Archive thenextweb.com
75 points by napolux  7 hours ago   5 comments top 4
mtrimpe 5 hours ago 0 replies      
It might be worth mentioning that this is part of an offer to match donations 3-for-1 until December 31st.
Surio 42 minutes ago 0 replies      
Relevant discussion on the same topic from last week:

A worthy and commendable initiative. Chipped in what I could.

I had meant to follow this up last week, but it slipped my mind. So, thanks for posting this again. :-]

owendbybest 2 hours ago 0 replies      
They also take donations in bitcoin. (something that python.org and the EFF can learn from)
mediumdeviation 5 hours ago 1 reply      
Direct link to the donation page: https://archive.org/donate/
List of data science and machine learning resources conductrics.com
150 points by seats  11 hours ago   12 comments top 6
antman 3 hours ago 0 replies      
Google is your friend. You will usually find something about those things by altering the following

best machine learning site:stackoverflow.com "closed as not"

paulgb 1 hour ago 0 replies      
Great list. Anyone have a recommendation for a good, rigorous coverage of Bayesian Statistics?
clarle 10 hours ago 4 replies      
Great write-up, and awesome list of resources!

The only thing I'd probably add is that there's a pretty significant gap going from learning linear algebra to more advanced topics such as LDA.

For people who are just getting started with machine learning, it's probably best to get started with implementing some of the more "intuitive" algorithms such as decision trees, k-means, and naive Bayes before moving over to some of the more recent academic work.

Other things that are pretty useful, but often forgotten, such as feature selection, data normalization, and even data visualization. Algorithms are usually just one part of machine learning, but even the best algorithm wouldn't be able to do anything without identifying what the best features of your data are.

Still, it's a great list of more advanced topics, and definitely something I'll keep bookmarked for future reference.

eli_awry 10 hours ago 0 replies      
I've spent the last 1.5 years as a machine learning PhD student slowly discovering many of these resources and topics, and I wish I had had this list at the beginning - it contains most of the gems I've found. I'd add that PGM course on Coursera clearly explains fundamental topics in probabilistic graphical models.

It's important to understand individual algorithms, but in many ways it's more important to have a broad overview of the field and its more modern methods, so that given a problem it's possible to think about the best way to solve it, and to share a common language with others who may have ideas. Beyond this list and various online courses, I've found that talking to people about their work and explain the high-level concepts of every black-box classifier or similarity metric or whatever it is they use has been quite educational

RaSoJo 9 hours ago 1 reply      
Awesome post. It has been bookmarked, Evernoted, printed and stuck up on my wall.

I did note the absence of the oft quoted Andrew Ng's Coursera course on ML. I assume the author has put it under : "disruptive educational sites".

But genuinely want to know how Ng's course measures up to the other resources mentioned in this post??

tgwilson 1 hour ago 0 replies      
Fantastic list of resources!
Why Your Company Should Sponsor Tech Conferences samuelmullen.com
6 points by wesgarrison  24 minutes ago   discuss
I Don't Understand bjk5.com
306 points by rsobers  17 hours ago   83 comments top 34
kstenerud 16 hours ago 5 replies      
I first noticed this effect in college, when the prof would be talking about something that didn't make sense to me. If I remained silent, he'd never explain (of course) and I'd remain ignorant. However, whenever I asked him, everyone would start furiously writing down his explanation in their notes.

So I got into the habit of saying "I don't understand". Inevitably, there would be quite a number of other people who also didn't understand, but were afraid to ask, so I'd just ask first. That stuck with me throughout my career and served me well. If you don't understand, ask.

Also, contrary to common sentiment, there is no minimum competency level that grants you the privilege of saying "I don't understand." Ignorance is not a monopoly of the elite.

zaidf 16 hours ago 1 reply      
Making a clear statement such as "I don't understand" also is a great signal to your coworkers. It kills confusion and builds trust: I know that if you don't understand, you will let me know. That is much better than having someone who I have to poke to admit that they don't understand something.

Another personal favorite is stating unequivocally, loud and clear that "This was my mistake". It is tempting to just fix the mistake but even if you have fixed it, if there isn't clear declared ownership, you probably haven't addressed the root cause.

Doing this keeps you honest to yourself and also removes the awkward air where no one knows who is responsible for this mistake because no one has taken ownership. To pull this off you need an environment that won't punish mistakes by default.

There are absolutely fireable mistakes but if you do this right, the employee should volunteer to be let go because he realizes the gravity of his error.

chernevik 12 hours ago 2 replies      
I am but an egg. Very new as a developer, not particularly good.

The smartest programmer in my workspace frequently looks for me when he's trying to solve something hard. There are a dozen people around us, at least, who are better able to _solve_ whatever problem he's working on. But they don't ask as many questions. I ask a lot of questions. Midway through explaining stuff he's solved his problem.

And meanwhile I've learned a ton.

rsaarelm 8 hours ago 1 reply      
That the most experienced devs say this the most might not be just about status games. You need to have a very solid shared background to be able to jump to understanding something after the sort of short verbal explanation "I don't understand" can be replied with.

If I go to an university lecture on advanced math, I won't understand things, and can say so. But it's unlikely the lecturer can say anything in the span of five minutes that will make me understand, since what would actually get me close to understanding the content of that lecture are several semesters worth of studies leading up to it.

The senior devs might be the only people on the room who do have such a solid grasp of their stuff that they can fill in their understanding with just a few minutes of explanation. Junior people don't understand either, but they might need to work over the new thing for hours, not five minutes, to get a proper handle on it, and you can't give an hours-long answer to someone who says they don't understand.

DigitalSea 16 hours ago 2 replies      
I can see why there seems to be a stigma attached to admitting you don't understand something, especially if you've just started at a new place and you want to make a good impression and reassure them they made the right choice hiring you. I've been guilty too many times of not speaking up when I don't understand something and it comes back to bite you. It makes you look more incompetent being ignorant and not speaking up and then ultimately failing to deliver, than it does to admit you don't understand something thus lowering expectations of the outcome from your work.

To be honest most senior developers are guilty of not creating the right kind of environments for people to comfortably admit they don't understand something and then it brings the whole team down as a result. With exception of where I work now, the senior developers at all other large companies I've worked at made you feel stupid for admitting you didn't understand. There's no weakness in admitting you don't understand, but because of the way companies these days throw words like Agile and lean around, it's no surprise people are afraid to speak up when a company works in the form of 3 week sprints.

While it comes down to the volatile environments managers and senior developers have created over the years, a bad economy doesn't exactly help when it comes to admitting you don't understand something you were hired to do either.

ColinDabritz 16 hours ago 1 reply      
One expression of this that I hear from newer devs (and clients) sometimes is "Can't we just...?" and what it really means is "I don't understand", but in a more socially safe way. If I address the question as if it were "what am I missing that makes this seemingly simple solution not viable?" it usually addresses the question and spreads better understanding. I also find that if someone is having trouble understanding my design, it is only rarely a lack of understanding on their part, and more often a lack of good design and good communication of that design on my part. "I don't understand" is a cue to try to make your architecture, design, and code more understandable.
hardik988 15 hours ago 1 reply      
I've always used the words "I don't know". My mother kept telling me she hated hearing those words. I can imagine that she was pissed that I didn't take a guess, but guess what? I hate guessing! I hate making decisions and jumping to conclusions based on partial knowledge.

Almost every environment I've been in - whether it be high-school or grad-school, a corporate setup, a startup,; I've found that "I don't know"/"I didn't get you" goes a long way. The other person in the picture usually goes out of their way to make me understand what I'm missing.

malingo 26 minutes ago 0 replies      
Expressing vulnerability requires a great deal of maturity, and is well-rewarded.
delinka 3 hours ago 0 replies      
I find that people not only have different views of The World, but also different internal definitions and understandings of basic terminology. This guy has the understanding that some assumption is implied in the implementation of an algorithm. That guy has never assumed that was the case. Both have tremendous amounts of experience in writing software systems (for example.) I've seen this exact scenario cause dozens of minutes of superfluous conversation because neither of them bothered to hear a detail that would allow them to realize there was not a full understanding between them. To address this case, my personal habit has become to listen carefully, consider the very words being spoken, identify those little things that aren't clear, have bred assumptions, or just plain don't make sense, and then interrupt ... even if by the time my brain has done all this the speaker has moved on.

It's leagues better than working under the wrong assumptions for days, weeks, months...

rmc 16 hours ago 2 replies      
Socrates, the ancient Greek philosopher from 2,500 years aging said this. "Wisest is he who knows he does not know".

And er, Donald Rumsfeld, when talking about unknown unknowns.

sachingulaya 8 hours ago 0 replies      
I started saying "I don't understand" years ago. A few very intelligent people have looked at me like I'm an idiot when I've said it. Don't expect it to make you look good in front of everyone.
azernik 7 hours ago 0 replies      
There's an Israeli saying that encapsulates this effect exactly (if somewhat abrasively): "Whoever asks, is stupid for a moment; whoever doesn't ask, stays stupid forever."
rsobers 16 hours ago 0 replies      
It's so critical to foster a culture where "I don't understand" and (to risk going off on a tangent) "I don't think that's right" is acceptable, even if its an intern to a CEO.

Reminds me of The Checklist Manifesto which cites how OR nurses and doctors who communicated best--they know each others names and nurses can tell doctors "stop"--had fewer surgical errors.

barbs 16 hours ago 0 replies      
Totally agree. In fact, when I was working at my first programming job, I realised I'd reached a milestone in competency when I could confidently say "I don't understand" without fear of ridicule or feeling stupid or worrying about slowing down the rest of the team.
drivebyacct2 16 hours ago 0 replies      
I speak up and protest when I don't understand. I "fight" back and challenge the logic of code|process|etc when I disagree. I don't do these things out of disrespect or because I think I'm "that smart". I do it because I need to understand and I don't. So I pick at it until I have a complete understanding. (Sometimes this is "Because." and I can accept that)

This also has the nice side effect of bringing a different perspective to an existing problem. It's a habit that has left several managers going "wow, you sure know what's going on, or you found problems that we'd not considered". I just shrug and reply honestly, "I'm just trying to understand."

It's of course also invaluable advice for students of any ages.

spdy 16 hours ago 0 replies      
This should be promoted in any company. If you cant say it or its "not cool" to ask these kind of questions get a new job.

It works against the biggest problem we all have miscommunication.

tibbon 16 hours ago 0 replies      
I'm managing a project right now, and I've found that frequently if I don't understand something, then saying this is indeed helpful. It felt silly the first few times, as I'm supposed to know the hows and whys as the project manager. But it offers me an opportunity to learn, and a few times has found sections of code that weren't really understood by anybody (perhaps from prior developers or cut/pasted from god knows where).

Great advice.

MrVitaliy 15 hours ago 3 replies      
My analysis professor used to say, if you state that some part of the proof is trivial then it should be easy to just write it out. And when you have a hard time writing it out or it takes too long, perhaps it's not trivial after all.
damian2000 16 hours ago 1 reply      
One thing that irks me is when you're given some sort of spec document and just told by someone senior the equivalent to RTFM; no questions tolerated ... you have to read and understand the document by yourself, and that's it. That's happened a couple of times to me... and its totally unproductive.
eclipticplane 16 hours ago 0 replies      
I've asked interviewees very difficult questions for this exact reason. I want them to say "I don't understand" or "I don't know" rather than bullshit me an answer. Of course, after saying "I don't know," I instruct them to elaborate on how they would work out the solution -- co-workers? Google? Experiment?
Bockit 15 hours ago 1 reply      
I agree very strongly with the sentiment of the article, and would like to add that I think the flipped side of the "I don't understand" is just as important.

I.e., You're trying to explain something and someone doesn't understand, you should be patient with the person. I don't think it's always (or even greater than 50%) the case, but enough times after finding out what the lynchpin of understanding was there are ways I could have improved my first explanation.

dpcan 13 hours ago 0 replies      
I hope this isn't the case. I've been sure to speak up when I don't understand since the beginning. Don't people appreciate it when you want to make sure you get it right the first time?
d0m 13 hours ago 0 replies      
I used to say I'm always right because when I'm not I say it (or I admit I'm not sure). It came out as being arrogant so I stopped using it publicly. But it's true. When I'm not perfectly sure, I never act like so. I'm only comfortable arguing back when I'm totally sure, i.e. can point to the right explanation in a book or something similar. Friends find it a bit annoying.. because whenever they ask a question, I'm rarely comfortable answering yes or no.. it's always, well, it depends ;)
lizzard 14 hours ago 0 replies      
I would often do this in class (or at work, in meetings) either because I really didn't understand, or because I could tell a bunch of others didn't. But it is fine to phrase it something not being clear, asking if they can try to explain a different way to make it more clear, or trying to rephrase whatever it is myself.
marquis 14 hours ago 0 replies      
Living in a country where you're learning the language is a good way to get used to saying 'I don't understand'. When I was really bad at the language I just often sat there and hoped someone would translate for me but as my confidence increased I was able to say 'Can you rephrase that for me' or 'I don't get the cultural reference'. Now I love asking questions, as so much extra knowledge comes with it and you can get people to go off on wonderful tangents.
hayksaakian 11 hours ago 0 replies      
With all the emphasis on confidence in modern culture, its dishonest to say you should in general admit you don't understand something.

In a negotiation for example, if you admit you dont understand something, the other party can use that factor to take advantage of you.

It also hurts your credibility in front of a wider audience when giving a speech for example.

While I do think being humble should be respected, modern culture will look down on those who admit they don't understand.

alan_cx 16 hours ago 1 reply      
"I don't know" shouldn't be feared either.
shanellem 5 hours ago 0 replies      
I really liked this article, but I think the very best devs are the ones who admit they don't understand and then ask specific, intelligent questions.

Anyway, admitting you don't fully understand something is the first step to fully understanding it. Great article!

jamesjyu 15 hours ago 0 replies      
Also, people who never say "I don't understand" will never get explanations of concepts they don't understand. The more you say this phrase, the faster you'll learn.
asimjalis 15 hours ago 2 replies      
As an instructor I have the opposite problem. How can I encourage students to say “I don't understand”?
leemor13 11 hours ago 1 reply      
Creating a culture where asking questions and identifying when one doesn't understand something is what we strive for, but there still seems to be a stigmatism when one expresses their confusion.

How do we create an environment where one doesn't feel it's wrong to ask for clarification without being subject to "looking stupid"?

vishalsankhla 9 hours ago 0 replies      
Well said, plus this gives the person a chance to think through more of their idea and explain it in more detail. Lot of times developers simply "assume" that other people get it, while that may not be the case.
gculliss 12 hours ago 0 replies      
Reminds me of the Dunning-Kruger effect. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
dennish00a 15 hours ago 0 replies      
The same is true of scientists: the best among them say "I don't know" or "I don't understand" all the time.
Decay: Physics students at LHC produces a zombie flick set in CERN newscientist.com
29 points by draq  4 hours ago   5 comments top 2
purephase 2 hours ago 1 reply      
Pretty cool to see the inside of the CERN in such a casual, off-beat manner.

Also, the LHC hiring protocol for students must have a attractiveness clause. ;)

tehwalrus 2 hours ago 0 replies      
full film on youtube: http://www.youtube.com/watch?v=n-NwLUPZWZc

(it is awesome :) )

Introducing the Pi Store raspberrypi.org
20 points by iProject  3 hours ago   discuss
Redefining "marketing" for startups and growth hackers fastcompany.com
3 points by techn9ne  11 minutes ago   discuss
Identifying IP address of filtering devices in the Great Firewall of China github.com
53 points by mediumdeviation  7 hours ago   15 comments top 3
xfs 3 hours ago 0 replies      
The GFW doesn't really have filtering devices with IP addresses.

For filtering in literal sense, i.e. address based packet null routing, all you can find is general carrier routers with their routing tables being dynamically manipulated by BGP commands sent by the GFW. You can't know where the commands come from.

For "filtering" described in this research, it's active connection disruption with spoofed tcp reset packets. The GFW mirrors traffic via some routers for detection and sends spoofed traffic for disruption. It doesn't have an IP address per se. This tool can find out from which router the GFW mirrors traffic, but not the GFW itself.

Here is a previous illustration on the topology of GFW networks: https://media.torproject.org/image/community-images/topology...

stcredzero 4 hours ago 0 replies      
Someone could publish a DB of the IP addresses and locations. It would be a DB for Mongol...
epynonymous 5 hours ago 4 replies      
way to get github banned for life from china! i guess it's time to use gitcafe which is a terrible clone...
Show HN: Etherpad meets Markdown for a minimal company wiki enterprisewiki.co
3 points by akrymski  14 minutes ago   discuss
       cached 17 December 2012 17:02:01 GMT