hacker news with inline top comments    .. more ..    23 Sep 2011 Ask
home   ask   best   8 years ago   
Ask HN: Where/How can I learn more about general webapp maintenance?
36 points by ha470  8 hours ago   15 comments top 7
mattmanser 4 hours ago 1 reply      

  1. Database, database, database
2. Database
3. It's probably your database unless you're doing something CPU or disk intensive, for example resizing and prettifying pictures, rendering a 3d image, etc. Realize that these days looping a few thousand times is trivial.
4. It's your database

Starting with fault tolerance, speed, unit testing, code abstraction, etc. is starting at the wrong point. 90% of performance problems are at the database level.

What's most likely wrong with performance in a webapp:

  1. No/bad indexes/missing foreign keys on your db
2. Stupid joins
3. You're doing stupidly complicated things in an ORM
4. You're doing complicated things in the DB instead of loading a large chunk into memory and doing calculations or aggregations in code. Simple DB queries are a lot faster than you think they are. Complicated ones are a lot longer than you think they'll be. There are weird gotchas in DBs like using a function in a where or select clause will cause a massive performance hit.
5. You're not caching into memory or something like memcached things that changes infrequently but are queried regularly. Memcached is actually overkill most of the time. Actually think about how much memory storing X would take compared to how much memory your machine has. Be surprised at how insignificant it is these days.
6. 1-5 are especially true if you're using Mysql - It's great and all, but all the other big DBs piss all over it for out of the box performance. You have to give it some love. I expect some dissent here. They're wrong. MS SQL is a shit ton better at handling a poorly designed db/db queries out of the box than mysql. I can't stress this enough.

tl;dr Start looking at your database performance before anything else.

pbh 7 hours ago 1 reply      
I'm not an expert, but this is what I've cobbled together as a fellow Ruby/Rails startup person.

Fault Tolerance: Just use Heroku. We've seen maybe an hour of downtime in a few months?

Speed (and fault tolerance): Cache everything you can, assets on S3/CF.

Testing: Rails Test Prescriptions by Noel Rappin
[http://pragprog.com/book/nrtest/rails-test-prescriptions]. Then you can choose what you like, but I like Test::Unit, Mocha, FactoryGirl.

Code Abstraction: Rails is already pretty sensibly organized, and if MVC + tests + static assets is not a good fit for your webapp, you really should not be using it in the first place. One minor point: Noel and others will tell you to use skinny controllers.

Curious what other people consider best practice for Ruby/Rails startups.

nfm 5 hours ago 0 replies      
From a performance point of view: test and measure! Find the worst bottleneck, and reduce it. Rinse and repeat.

NewRelic is a great tool to help you do this.

Common performance problems to look out for in Rails are:

* Missing database indexes

* Long running code (eg PDF generation, file uploads to a third party) that should be put in a job queue

* Innocent looking ActiveRecord calls that use N+1 queries or fetch way too much from the DB and the result set is further reduced in Ruby

bricestacey 7 hours ago 1 reply      
I've heard good things about New Relic for performance testing.

MiniTest, which is built into ruby 1.9 has a full suite including performance tests. It's really cool because you can measure e.g. whether an algorithm scales linearly or not.

guard-of-terra 7 hours ago 0 replies      
You can read on various massively scalable webapps architecture. http://highscalability.com/ seems to aggregate those, and you can find articles and slides published by the developers of more services if you do some googling.

The key to speed and load tolerance is massive multilevel caching; every service does caching differently but they all do.

rprime 7 hours ago 1 reply      
A quick tip would be to run everything process intensive in the backend, don't waste frontend resources with API calls, data processing etc, got something that takes more than 200ms to run, place it in a job que and do the processing later.

Some tools for the job:

Also don't forget to cache. You shouldn't worry too much if you do these two properly.

etothep 6 hours ago 0 replies      
Pick up Release IT (http://amzn.com/0978739213) from the Pragmatic guys. While many of the examples and stories are based on Java webapps there is something in there regardless of which platform you are building atop.

Oh, and don't ever establish a blocking connection without a timeout or some other mechanism to abort it.

Ask HN: How does (or could) machine learning help you?
8 points by tansey  3 hours ago   2 comments top 2
aspir 2 hours ago 0 replies      
An old friend of mine is using machine learning techniques to predict levels of drought occurrence ranging from a few dry weeks to a hypothetical dust bowl.

It sounds purely educational and research driven, but his goal is to study drought's influence on the commodities markets, so there's a potentially lucrative end goal.

glimcat 3 hours ago 0 replies      
It's used for lots of stuff. Predictive typing, market segmentation, trend analysis and prediction, computer vision, medical tomography, process optimization...
Show HN: ca.pitali.st, not a weekend, but afternoon project
4 points by klapinat0r  2 hours ago   2 comments top
manuscreationis 2 hours ago 1 reply      
Well - It works!


I know nothing about how the algorithms for building these kinds of work, but very cool none the less.

Preview function is especially nice.

Add a submit button - not everyone knows to hit enter without some kind of prompt.

Good luck with your project

Ask HN: Is my project worth pursuing?
8 points by dholowiski  6 hours ago   8 comments top 5
mikeocool 5 hours ago 1 reply      
I like the idea of being able to figure out that beers are brewed near by. But the data entry piece sounds a little arduous for the result.

Have you thought about crowd sourcing it? Maybe make localbeer.me a giant google map with all the breweries you've entered so far on it and the have a super simple form that lets people add their local breweries and their beer offerings. I feel like I know some hardcore craft beer drinkers who'd totally be into dropping in their favorite local breweries.

In the long term, you're going to have keep all the data you've entered by hand updated, and it seems like crowd sourcing would be a good way to get that info anyway.

dholowiski 28 minutes ago 0 replies      
Just added Twitter signin/account creation, in an attempt to remove a barrier to entry. Facebook signin coming next week. Here's hoping...
Pyrodogg 5 hours ago 1 reply      
> but that's going to take months - months I could be working on some other project.

Then get someone else to do it. Is there anyway you could automate the brewery discovery and addition process such that you could distribute the actual thought process work through something like Mechanical Turk?

It's just the first that occurs to me reading through your post. If you could offload that task to machines/other people you could focus on more value-add features, moving the project forward.

tg3 2 hours ago 0 replies      
I think it does have value, but a few things that struck me as "must dos":

- make it better for mobile, since that's likely the platform I'll use in a strange city. Maybe this is part of the graphic design piece that you were talking about.

- make it easier to see ALL the breweries/beers near me. I would think that would be the main page instead of one at a time (I hate refreshing the page)

If this project was dropped in my lap, I would do this:

- work on UX above all else (and before data entry). Make it easy and enjoyable to see what breweries are near me and to add breweries and beers.

- focus on a single geographic area for data entry. I'm in Chicago, so I would make this a killer website to visit if you're visiting Chicago. Promote it heavily in Chicago (Facebook ads is super targeted and great for something like this, you can target beer drinkers ages 21 - 40 in Chicago only, and might even be able to narrow it further).

- Let users add content for additional cities if it becomes popular in your homebase. Remember, we already made it really easy to do that in step 1.

- I might even look into signing up bars to be listed on the site as carrying a particular beer/brewery when a user is near their location. In exchange they put up your flyer. Free promotion if the functionality is there.

I think there is definitely value here, but I would devote some serious time to improving UX before data entry. As others have said, there are ways around doing the data entry, but not too many ways around good user design.

MPiccinato 3 hours ago 0 replies      
I have been working on Had That Beer, www.hadthatbeer.com/signup?c=earlyaccess to check it out, for about 8 months now. I am the sole developer, designer, admin etc. I know the pain of all the manual data entry that has to be done for beers and by the time you are done a new batch of something else has been brewed and you are out of date. I would go through select geographic areas, get as many beers in as you can and start promoting it in that area. Best way to get feedback is to get users, and some of those users might not mind helping add a few brews.

I think your project is definitely worth pursuing. If you don't think so then maybe we could team up.

Ask HN: Would you like an IRC server?
4 points by yeahyeahs  4 hours ago   4 comments top
gharbad 2 hours ago 1 reply      
Ask HN: So, how's the ongoing financial crisis treating you?
2 points by barredo  3 hours ago   1 comment top
slindsey 2 hours ago 0 replies      
I'm frustrated with my job but don't feel that I can find anything else that is as flexible given the work climate. I miss 1999 when I was able to walk into my bosses office, say "I want a $15,000 raise," and he said "OK" with no hesitation.

So I decided to start doing independent software development at home so I can free myself in the future. I just picked up a book on Android development after being inspired by some people here on HN. Just hoping an idea or two hit before I'm done with the book.

Ask HN: What visa should entrepreneurs apply for YC
3 points by sathishmanohar  18 hours ago   4 comments top 2
mrkmcknz 15 hours ago 1 reply      
I think it would be best to come on a Visa Waiver or maybe even a B visa.

You could go for the E2 with about $100,000 in investment.

So Waiver the YC and then E2 when you get investment. Or B visa and change status once you have funding.

Best talking to a lawyer though I think.

Best of luck!!!

mriyasam 16 hours ago 0 replies      
This looks like a useful information.
Ask HN: Is this data startup idea viable?
4 points by kemvi  22 hours ago   8 comments top 5
revorad 19 hours ago 1 reply      
Be sure to read about these startups which failed trying to do something similar:




I guess the takeaway is that the business model is probably B2B, and you need to fulfill a real need.

dmk23 20 hours ago 1 reply      
Seems like you are offering the same data manipulation people currently do either with desktop software or custom coded server apps. Your value here is turning it into a web service and making it easier to use. There is a very strong case for doing just that.

What I would recommend is to connect the dots and clearly position your service as cloud alternative to desktop / server data manipulation packages. Get very explicit about it and target similar customers. Do not limit yourself to just data on the web and allow file uploads. Make a feature-light free version and charge for a premium one, determined by data volume or number of manipulations or something like that.

I think there is a lot of room for cloud-based statistical service to undercut traditional players in this market.

rorrr 20 hours ago 0 replies      
There are tons of data sets out there, most are in a great shape, and trivial to parse.

I guess maybe you need to provide some better examples of what your service will be. Now it all sounds like something I can do in Google Doc spreasheets or Yahoo pipes.

And how will you make money?

tylerneylon 21 hours ago 0 replies      
Yes, I think it is, although I see a few challenges.

It is a huge amount of work to integrate disparate data sets and build a system that can efficiently handle many customers' requests.

It may be difficult to show customers how they can actually use it. Comparing two stocks isn't cool. You know what's cool? Comparing all stocks with realtime updates.

For the second problem, I mean that users won't use their imagination much to figure out what your product does. You have to spell it out in concrete, actually useful examples. This is a challenge between engineer-thinking, where general functionality is king, and user-thinking, where one particular goal and the path of least thinking/work is king.

ig1 20 hours ago 1 reply      
Have you seen http://timetric.com/ who do something along those lines, although with less manipulation.
Dear Google Marketing (Re: Your kids policy)
117 points by Smrchy  4 days ago   33 comments top 13
yanw 4 days ago 2 replies      
It's not their children policy it's the government's: Children's Online Privacy Protection Act (COPPA): http://www.ftc.gov/privacy/coppafaqs.shtm
dotBen 4 days ago 1 reply      
I think the way the setup in the advert is achieved legally (ie not foul of COPPA laws) is that the father owns the account and then will hand it over to his daughter at a later date (eg when she is 13, thus COPPA doesn't apply).

Therefore to apply logic to the situation, if you created a Google+ account for the email address you would enter your own age as you are (currently) the legal owner of the account.

But I agree, it's pretty clear the marketing department used some artistic license with their ad.

cleverjake 4 days ago 1 reply      
This issue was raised when the ad came out, and there is a distinct difference. The Dear Sophie account is not an account that is used by a child, it is one that is used by a child's father, and therefore allowed.
dl719 4 days ago 2 replies      
Last I checked, (which was http://www.google.com/support/accounts/bin/answer.py?hl=en&#... right now), if you provide your credit number and are willing to pay thirty cents, you can re-activate the account. They specifically say that it can be done by parents/legal guardians. Problem solved, 'nuff said.
silverbax88 4 days ago 0 replies      
I'm probably going to get bashed for this, but when I saw this ad, I cringed. Parents, please don't do this to your kids. I find it creepy that someday a woman is going to be handed hundreds of letters that her father wrote to her over the years. It's weird and awkward.

When I saw the ad I thought, 'surely no one would be that weird to their kid...right?', then I immediately realized that someone would do this exact thing.

Just let your kids grow up with you in real time.

garbowza 4 days ago 0 replies      
I saw Gmail being used in this manner quite a bit among our friends with new kids (or expecting kids). I was concerned about the long term security of the memories they shared this way, which ended up being the reason I co-founded my startup, Moment Garden http://momentgarden.com .

There are surprisingly few good, secure ways to save and share memories of your kids. Particularly if you don't trust Mark Zuckerberg with your child's private data.

suhastech 4 days ago 0 replies      
Dear Google,

Please have a "Do not try this at home" disclaimer on all your videos.

A guy with a disabled account,

Yours sincerely,

smoyer 4 days ago 0 replies      
As a parent, I know exactly how you feel ... when my kids were mature enough to have (parent monitored) accounts on the Internet, they too were less than the required 13 years of age. The COPPA law allows you as a parent to determine that for yourselves but rightfully doesn't try to force providers to do so (you can understand the logistics nightmare that would become).

So the solution to both the real names policy and the under 13 year-old policy is simple. Take matters into your own hands.

Buy a domain name and DNS service. Sign this service up for Google applications for domains and then give accounts to up to 25 kids if you wish. Note that you will be responsible for complying with the COPPA regulations ... not too hard if it's for your own kids but perhaps it wouldn't be wise to provide this service to other's kids.

At some point in the relatively near future, you can expect G+ will be enabled for applications for domains (gradually almost every Google service has) and I don't see how they can force these domains to use any more real names than those entered for the domain's users. By definition, these are the names the users are commonly known by. Whether a real name or an alias, their colleagues must know this to be a valid alias/nick since they're using it as an e-mail handle.

Good luck!

vaksel 4 days ago 0 replies      
the problem is that Google really doesn't give a crap about any of it's customers(not even paid really).

that's why they use bots to automatically suspend accounts...because a real human being wouldn't have cared to do it.

Google makes about 2 billion in profit every quarter...how about spending 30 million(10mm/mo) to hire 3000 customer service reps to double check before ruining people's experience? Call it a good will investment and count it as a PR expense.

dendory 4 days ago 0 replies      
That video is misleading since it shows things that you cannot do because of their policies. It should be reported as inappropriate hint
dirkdeman 4 days ago 0 replies      
The video from the link is about Johnny Cash...?
sixtofour 4 days ago 0 replies      
The left foot doesn't know what the left foot is doing.
wazoox 4 days ago 0 replies      
You're not a customer when you're using a free web service; you're the merchandise being sold to the real customers, advertisers.
Ask HN: Good NLP Books for an experienced programmer
6 points by subnetvj  1 day ago   3 comments top 3
LearnYouALisp 59 minutes ago 0 replies      
Whew, I thought this was about something else.
dougk7 1 day ago 0 replies      
Natural Language Processing With Python - http://www.nltk.org/book

Handbook of Natural Language Processing - http://www.amazon.com/Handbook-Language-Processing-Learning-...

glimcat 1 day ago 0 replies      
"Natural Language Processing & Knowledge Representation" by Iwanska & Shapiro
Ask HN: Where can I go to learn basic coding?
5 points by keecham  1 day ago   9 comments top 5
freshfey 1 day ago 1 reply      
I asked a similar question a few days ago here: http://news.ycombinator.com/item?id=3007945 there are some gems in this thread!). I'm actually on the quest to find out what's the best method to learn programming for non-technical people, but I'm still compiling some learnings.

If you're using Ruby on Rails in your startup, start directly with www.railstutorial.org - it's a great introduction to not only programming but all the side things that programmers do (version control, deployment, etc.)

If you need a Python or Ruby introduction, Zed Shaw's are very good too!

runjake 1 day ago 0 replies      
Use the search. This question gets asked ALL the time and there's no use rehashing what's been hashed over and over.

You'll probably find a lot of references to LPTHW.

Edmond 1 day ago 1 reply      
You could start by toying around with Phyzixlabs Software. It is a platform for building and using academic applications based on Javascript and SVG. The motivation for PhyzixLabs is to make it easy to build and use applications such as these: http://phet.colorado.edu/.

It is a cloud based programming environment so you wont have to deal with setting up your own coding environment which is usually the biggest road block to new coders.

Below are some live demos of apps built on the platform and a couple of video tours:

*Firefox, Chrome,Safari or Opera required.

Spring Mechanics:

Projectile Motion:

Here is an example of the above programs embedded in a blog post:

User Demo : http://www.youtube.com/watch?v=PhZcIMvejVA

Developer Demo: http://youtu.be/wma9MU2e_U0

Feel free to contact me with newbie questions!

Toddward 1 day ago 1 reply      
Codecademy is pretty awesome if you really want to start with the very basics. The lessons they have so far cover Javascript, but the features they teach you span most languages.


When I started out, though, I had a clear vision of what it was I wanted to do, bought a book, and started hacking away. I learned best by jumping in head first with the hard stuff, but I realize a lot of people learn differently than I do. I would say that if you find the Codecademy courses too easy or boring, you should try my approach instead.

As far as what to learn...it kind of depends on what you're trying to build. Back when I was teaching myself, I was using PHP and MySQL, but the world appears to have mostly moved on from the LAMP stack of yesteryear. I'm partial to Python these days, but I've always enjoyed Java as well. Javascript has blown up in a huge way in the past couple of years and platforms like Node.js have only made it that much more practical. If I were to start learning web development today, Javascript is probably where I would start.

DanielStraight 1 day ago 0 replies      
Zed Shaw's Learn Python The Hard Way:


Ask HN: What is market rate salary?
5 points by ltcoleman  1 day ago   6 comments top 4
steverb 1 day ago 0 replies      
To be frank, market rate is however little your employer thinks they can get away with paying you, or someone comparable to you.

Look at indeed.com and salary.com and aim for 75th percentile and higher. Unfortunately the only way to really know is to put yourself out there and see what offers you get.

megamark16 1 day ago 2 replies      
I don't know how accurate or relevant it is, but Indeed.com's salary comparison tool can sometimes be helpful. Here's an example:


wavephorm 1 day ago 0 replies      
"Market rate" literally means "average salary". So you can use the salary sites and take the 50th percentile, and compare that against cost of living values.
parasitius 1 day ago 0 replies      
woah cant believe little rock is more than DOUBLE what we get in ohio, must be a bigger town than i knew!
Facebook is now completely useless
10 points by coderdude  1 day ago   9 comments top 7
michaelbuckbee 1 day ago 1 reply      
I deeply admire Facebook for having the guts to make these large UI changes. Every time they rollout anything that is different there is a near riot of people clamoring about how bad it is or how things were so much better with the old system.

I don't think the updates are capricious or arbitrary, I think they are the result of doing lots of testing with lots of users and then having the strength to weather the criticism that inevitably comes with change while they watch the metrics to see if things are actually improving.

dgunn 9 hours ago 0 replies      
Useless? Really? I used facebook last night. And it seemed to get the job done. Are you sure you're not being overly dramatic?
sek 1 day ago 0 replies      
I don't understand what they want?
Who asked for this text wall?

To be honest, 99% of the time i just check for new messages or use the chat and don't care about anything else.

There may be a lot of people who care about this stuff, but how are they supposed to find anything relevant?

wakaflokkaflame 1 day ago 0 replies      
Sorry, but this post is ridiculous. To expect hundreds of millions of people to up and leave a site...that is highly unlikely.

Is facebook obnoxious? Yes. Do their features generally work well enough to keep the unwashed 95% happy? Yes. Are people proficient with computers/interwebz more likely to be upset anytime FB/another entity changes something? Yes.

This post seems to fall into the latter of the above 3 categories. The take-away, I suppose, is that people tend to be averse to change. No surprise there...

wonderyak 1 day ago 1 reply      
I think they are wary about being a has-been site like all the big networks before them. Whereas the other two failed to innovate quick enough, Facebook seems prime to innovate itself right out of existence.
hugacow 1 day ago 0 replies      
Agree that FB should not be trying to make things more complicated. Simplicity and the large number of users they had were their two strong points. Now one of those is starting to go.
Zimahl 1 day ago 0 replies      
> Facebook is completely useless


Ask HN: How can I motivate my talented dev to give a shit?
15 points by howcanisaythis  1 day ago   26 comments top 13
frankus 1 day ago 0 replies      
I'm part of a remote team, and have had my share of difficulties with motivation.

As best I can, I've listed broad categories of what demotivates me:

First, lack of clarity of what the next task to be completed is, and a perplexing reluctance to simply ask.

Second, a task in front of me that is too large to attack at once and for which I haven't found an angle from which to attack it.

Third, something else is temporarily much more interesting/threatening than work. Facebook and Twitter can be interesting, but I find if I'm spending hours on them it's to avoid something, not because I'm enjoying it. So it's unlikely something temporarily interesting.

Fourth, there's that "wait a second, we're doing this wrong" feeling, which if it's leading to a drop in productivity is probably followed either by "I don't know what the right approach is" or possibly "the right approach is so different from what we're doing now that soon we'll be screwed." The developer senses an impending technical dead end.

Finally, there's disillusionment with the overall goals of the job/company. A "we're doing it wrong" but on a more fundamental level, followed by either "there's no way I can convince the company to do it right" or "I have an aversion to the core business we're in". The developer senses a dead-end job- or lifestyle-wise.

Regardless of which flavor of problem it is, I think mcherm pretty well nailed the solution.


Another possibility is that your developer has been assigned something he hates and is hoping that by avoiding it long enough it will go away. This is a particularly easy and self-destructive (usually) pattern to fall into.

mcherm 1 day ago 1 reply      
Different techniques work with different individuals. If I were that developer, then "level with me" would probably be the best approach. "Hey, Michael: lately you've been spending lots of time on Facebook/Twitter and we have a release in a week. I'm worried. What's up?".
aquark 1 day ago 0 replies      
You say that he has "no real set hours, just that he gets stuff done": is he getting stuff done?

If he isn't getting the expected stuff done, then that is the discussion you need to have.

If you aren't happy with the amount of stuff you are expecting then discuss that.

Some days are productive and some days aren't (and I find unproductive days tend to follow really productive ones). Try and view it purely from an output point of view, and not what his method is.

haasted 1 day ago 1 reply      
Have you tried putting some deadlines on his tasks? Get him to commit to some deadlines for his tasks, obviously made with his input.

It's my experience that a lack of deadlines and a bit of interest from someone monitoring the progress, can lead to a state where a task seem unimportant. It's a bit weird, and I can only guess at what process is at play, but I have seen this effect in otherwise great developers.

mprny 1 day ago 2 replies      
You describe yourself as the "product owner". And the dev has no equity. Maybe he feels he's doing all the work and you gain all the benefits. You should offer him some equity, ownership is a great motivator.
hekar 1 day ago 1 reply      
I'm suffering from a quarter life crisis (I'm 20.) I think a lot of people do. They just never talk about it.

It takes different things/approaches to motivate people. For me, inspirational speeches work really well or knowing that your manager is actually interested in your work.

However, it does sounds kinda odd that he didn't take the equity... He might just be an immature person that doesn't want to take responsibility. And this could be for various reasons completely outside the work environment that you have very little control over.

I think that just talking to him and asking what's up and what's going on is the best solution. Maybe he just needs a wake up call? The sincere, "I'm worried. What's up?" usually works pretty well?

huherto 1 day ago 2 replies      
- Put some rules on twitter/facebook. For example (I think) PG has a separate computer to browse the web. He has to seat in another chair to do that.

- Understand why he is having trouble focusing. Does he have impediments and he avoids them by going to twitter/facebook ?

joshontheweb 1 day ago 0 replies      
If you want him to 'really care' give him some equity or stock options. If he is as talented as you say he is then he can probably make more money elsewhere. If, however, he has equity then he actually has something to gain by working hard instead of simply not losing his job.
mrkmcknz 1 day ago 0 replies      
I think the best thing you can provide is something you can't actually provide.

The feeling of being part of something. If I were a rockstar hacker I would want to feel this project was something that could blow up, otherwise it would simply be a stepping stone for better things.

Best thing you could do personally is have a chat with him.

Best of luck.

dirkdeman 1 day ago 0 replies      
It has been my experience that most college grads still need some basic rules and guidelines. Fresh out of college, you think you know it all, right? It's a generation Y thing, which asks for a little adaption on both sides...


chsonnu 1 day ago 0 replies      
He's probably suffering from a quarter life crisis. A common thing in generation Y.
no-go-mojo 23 hours ago 0 replies      
He isn't enjoying certain aspect of the job.
dkhenry 1 day ago 1 reply      
If your developer is not motivated to do a good job he is not talented. being a good developer is more then just having the ability to comprehend the principles behind software design its about being able to make those principles manifest themselves in working product. I think the real problem you have is a poor developer that has convinced you he is good.
Ask HN: Great links for arduino hackers?
12 points by ritonlajoie  3 days ago   8 comments top 6
ritonlajoie 3 days ago 1 reply      
Here is my small list:

- http://hackaday.com/ : general and also arduino based hardware hacking

- http://makeprojects.com/ : great books & resources

- http://www.instructables.com/ : projects (some based on arduino)

- http://arduino.cc/forum/ : the arduino official forum

leh 3 days ago 1 reply      
I haven't found one yet. hackaday.com isn't Arduino only, but they cover a lot of interesting projects with Arduinos.
nottwo 3 days ago 0 replies      
I maintain an Planet aggregator for tracking Arduino-related blogs that pique my interest: http://planet.nottwo.org

Kinda plain, but works well in my feed reader.

dramaticus3 3 days ago 0 replies      

get off the internet and build things

Ask HN: Customer wants access, what should i do?
5 points by kodeshpa  2 days ago   3 comments top 2
div 2 days ago 1 reply      
Well, if it's beta, you are already showing it to people, so I would definitely show it to someone with a high chance of being a customer.

If they don't like it, you can always email them / call them to have a second look when you feel you've made noticeable progress.

EDIT: If using it in production carries a lot of risk for this customer, don't pussyfoot around and advise him to wait.

kcurtin 2 days ago 0 replies      
I'd say go for it if a.) the core functionality is intact and b.) you set the customer's expectations. I am in a similar situation at my company and we have begun letting customers use our product. My basic feeling is that the more people you can get using the product the better - they will provide you with feedback and help you test how things scale early on. If the only problem is small UI things, it shouldn't matter so long as you manage is expectations correctly.
Ask HN: 1 minute Survey About Open Source Software in Your Products
36 points by bretthardin  6 days ago   21 comments top 10
ColinWright 6 days ago 5 replies      
If you really want people to do this, why do you make them copy and paste the URL into their browser? Why don't you provide a clickable link?

Here, I'll do it for you: http://www.surveymonkey.com/s/PT56NHC

... and now that I've gone to take the survey, I can't finish it because there is no suitable answer for question 6. Another of the questions I had trouble understanding the distinction between "None" and "0" as answers.

So I gave up.

Good surveys are really quite hard to design, and bad surveys are pretty near useless. It's pretty clear you're asking how much people will pay for something you're thinking of producing, so I suggest you think a lot harder about how you're going to get that information. I'll be very surprised if this survey gives you anything reliable.

kevinherron 6 days ago 1 reply      
I marked "I only use free tools", but what I really wanted was an option like "This isn't worth paying for".

We do pay for tools we find useful.

mtogo 6 days ago 1 reply      
It's good etiquette to post the results page with the poll so that it benefits the entire community, not just yourself.
huhtenberg 6 days ago 0 replies      
Consider making all questions optional and you'll get more people answering.
BrandonM 6 days ago 0 replies      
A metacomment related to question 6: Ubuntu tells us exactly how many packages need to be updated, and the update is as simple as executing a single command. The problem is ensuring that functionality is not broken by things like API or subtle behavior changes. This means that updates end up happening infrequently since they need to be regression tested on a development server before being pushed to production.

If a product could solve that problem (classifying updates and performing code analysis to determine if something could break) it would definitely be worth paying for.

Note also that you're asking the wrong people, and it's going to be hard to ask the right people with an Internet post. The best candidates for this tool are busy founders/CTOs/sysadmins/engineers who don't have time to manage their updates, much less take surveys on Hacker News.

andrewcooke 6 days ago 0 replies      
i clicked on the "only free tools", but this is an interesting idea. how are you planning to implement it? a tool that scans our git, hg, svn and cvs repos and tells us what we have would be quite interesting (although there's the obvious hurdle of trusting third party code enough to ever run it).

i work for a small consultancy that builds bespoke solutions using open source code - we have loads of projects, some ancient (cvs!), and i am sure no-one has a clue what versions of what we used when (sure, it's documented for the client, but we don't have our own central list). now perhaps we should be better organised, but i suspect many other companies are in a similar position.

but if we were going to pay for this, how would it help us make money? is the idea that we can approach ex-clients and scare them with lists of security holes? or are they the target clients - perhaps they should be running this code to audit their systems? and that sounds so useful i am surprised that nothing like this already exists...?

JoshTriplett 6 days ago 0 replies      
Same objection to question 6 that other people have mentioned: I wouldn't pay for a service that tells me about open source software updates (because I keep up with them myself already as part of my usual process of staying informed), but that doesn't mean I don't pay for services in general.
bitops 6 days ago 1 reply      
I agree that Question #6, the keystone, is poorly designed.

It should also include the option "I don't know, depends on how useful it is".

I just chose a random answer since that option wasn't there (and the question was required).

ScottWhigham 4 days ago 0 replies      
I bailed at question #5: "How many open source packages that you build your product on are currently out of date?"

It's just too vague and it implies that I'm lazy/behind. Let's say I'm using jQuery 1.x, for example, because when I was building/testing last, that was the most stable version. Today jQuery has probably 20 more "updates" since I rolled mine into production - the version number has incremented 20 times - but it doesn't mean I'm "out of date", does it? I don't believe that I have to update my use everytime jQuery goes from 1.34 to 1.35 to 1.36 all the way to 1.99.

So "out of date" is a bit problematic for me in that I don't feel the need to test/use every incremental update.

rickette 6 days ago 1 reply      
Only 6 questions, I've seen much worse surveys ;-
Ask HN: Do musicians/artists release MVP & iterate it?
7 points by selvan  3 days ago   3 comments top 3
epoxyhockey 2 days ago 0 replies      
From an indie rock musician's standpoint, I could interpret the MVP of a song as many things. A cool sounding riff, an instrumental (song w/o lyrics) or poetry (lyrics w/o instruments).

The quick answer is that my band performs none of those things in a concert setting. The most MVP we perform is a song that maybe doesn't have all of the lyrics worked out or maybe needing another section of music added to it - a work in progress. In our private practice sessions, of course, we build songs from scratch and you could make some comparisons to MVP.

I would compare music to hardware rather than software. You need to have things pretty well worked out before public performance because no one comes to a show to hear you play one riff and most audiences don't care to listen to a boring set full of rock instrumentals and no lyrics.

Also, it is generally difficult to get real-time feedback from an audience while performing rock music. Some audiences just stand and stare at you while bobbing their heads and other audiences jump around so long as there is a beat. You don't have the constant feedback that a comedian has after every joke. Pretty much the only feedback you'll get is that people will leave if you suck, or they will clap a little less after a song if they aren't as entertained. I have to ask my close friends after the show what they think of certain songs.

I don't think any musician creates music for the sole purpose of pleasing the audience. A musician creates and performs music as a means of self-expression. So, in my opinion, MVP and its market testing methodologies are less applicable to musicians.

frankus 2 days ago 0 replies      
I've heard of stand-up comedians, playwrights, and musicians testing new material on small audiences to gauge how well it works, but that's arguably closer to a private beta than an MVP.

I also know that artists will often do studies of their ideas before doing a full-scale piece, but that's more along the lines of a development spike than an MVP.

The closest thing to a true MVP that I've heard of in music would be a band that labors away in obscurity for a few years, has a hit, and then re-releases some of their old material but with better production values.

Thinking out loud, I think the difference between the sort of software where an MVP is important and both music and art is that the former is a tool and the latter is entertainment.

The entertainment industry is built on novelty, and the sheer amount of material out there is so vast that the media can really only cover what's new, what's especially good, and what has made important innovations in the past.

If what you're building has utility above and beyond its entertainment value, you have the freedom and in some sense the responsibility to release early and often.

glimcat 1 day ago 0 replies      
What, you mean like how bands release singles and do live performances to build up a fan base and get backing?
Tell HN: Michael Wogan, Reno air crash victim, web developer and founder
20 points by 51Cards  4 days ago   3 comments top
abbasmehdi 4 days ago 1 reply      
This is very sad, however, I didn't find any evidence of him being a web developer himself.
Ask HN: Which Startups Have Good Summer Internship Programs?
3 points by aorshan  2 days ago   4 comments top 3
c_t_montgomery 1 hour ago 0 replies      
the short answer is: yes. any experience you get working at MOST startups will be phenomenal. the key is finding one who's founders are on the same page you are (work hours, personality, etc).

I posted on HN about 8 months ago, came out here to work, we got some funding, and now I'm taking a semester off class to work as the first employee. so, keep being proactive and ask the right questions - the rest will fall into place.

younata 2 days ago 0 replies      
The hiring threads, posted at the beginning of each month by the bot whoishiring [1], are great resources for finding places to intern at.

[1] http://news.ycombinator.com/user?id=whoishiring

maxstoller 2 days ago 1 reply      
You should look into HackNY (http://hackny.org). Last summer HackNY paired 35 students [1] up with startups and gave them all housing in NYC.

[1] http://hackny.org/a/2011/06/class-of-2011-hackny-fellows/

Ask HN: How do you get over the pain of refund requests?
19 points by gburt  5 days ago   17 comments top 13
acangiano 5 days ago 1 reply      
Sell more. You'll end up issuing more refunds, and eventually get used to it. It will stop hurting eventually.

When I first started http://anynewbooks.com, the occasional un-subscription or "Enough! Stop sending me emails." message would bother me a little.

Today, I don't even blink at unsubscribe notices. And when I get the occasional "Remove me!!!!111!!!!", I simply unsubscribe the person who doesn't understand that an unsubscribe link is provided.

No big deal. I know that refunds are a little more personal, but like most things in life, you get used to it. You'll grow a thicker skin.

Just focus on selling more copies of your product. And focus on improving your product for all those people who didn't ask for a refund.

If after issuing dozens of refunds you still can't get over it, then outsource it.

alanstorm 5 days ago 0 replies      
Run the numbers, calculate the percentage of your income lost, and just consider it another unavoidable cost of doing business. I imagine you don't like paying Paypal, Google Checkout, or merchant account transaction fees, but I also imagine you don't feel personally slighted at having to pay them. Put people exploiting your refund policy in the same bucket.

If this is a subscription service, automate the refund process such that you can you can send a single email with a link that will let them provide feedback, cancel their service, and refund their money.

If you're selling software bits consider a serial number system that will allow you to remotely disable people who have requested refunds. Also, keep your refund policy but stop advertising it. This way you prevent bottom feeders from even knowing it's an option. If you notice this is costing you more sales than you gain, go back to advertising it and re-read paragraph one.

asanwal 5 days ago 0 replies      
Yes, it sucks, but I'd keep doing it yourself for a few reasons for both refunds or even folks who want to cancel your service after some time (assuming its subscription-based):

1. It'll offer you an opportunity to get feedback which can help make your product better.

2. It can turn a hater into a net promoter if you do it right.

3. Direct outreach from the founder of a company makes your firm more human (not sure what industry you're in but in ours, people really appreciate it). It may not turn the "gamers" into buyers, but if you believe most people are good, they may be less inclined to game if you're not just some "evil business"

And although I also sometimes remember rejection more than successes, I find these requests motivate me.

Note: I've got no sense of volume you're dealing with so I'll caveat the above with that if it's becoming a time-suck.

notatoad 5 days ago 0 replies      
console yourself with the knowledge that handling a refund is better than a dealing with a credit card chargeback.
emmett 5 days ago 0 replies      
The answer is simple: yes. If you find dealing with purchase support emotionally stressful, definitely outsource it. Just make sure you receive weekly reports so you can keep your eye on trends.
chandika 5 days ago 0 replies      
Do you have a 'no questions asked' refund policy? Do you still ask questions as of to why?

We do have such a policy, but we do ask 'why?' in a manner that aims to clarify and improve our service. A subset of the users are nice enough to explain and sometimes addressing that root cause cuts refund rates by about 25%.

Btw, would you mind sharing the points in your refund response email template? I would assume the effectiveness would depend on the nature of product, but it'll still be educational me thinks.

pbreit 4 days ago 0 replies      
Consider it this way: a lot of less successful startups and service providers would love to be issuing refunds!
kellyreid 5 days ago 0 replies      
Get used to it. I think paying someone else to deal with billing stuff is a fine idea, but don't distance yourself too much. I could easily delegate out the "refund reply" job, but I choose to do it personally.

It's really easy to turn a refund request into a repeat customer. If you're getting people "gaming" the system, change your policy.

xekul 5 days ago 0 replies      
I offer an unconditional refund policy at my service business, and I've had to deal with the same feelings. In my case, I would often spend a few hours working personally with the client, only to refund their money afterward.

However, I continue to offer the policy because my refund rate is low (about 1-2%) and the increase in sales due to the policy is substantially higher than that. The way that I see it, giving out a few refunds is a cost of doing business, and I don't begrudge refunds any more than I begrudge taxes, merchant fees or rent increases. Looking at refunds mathematically takes some of the pain out of paying them.

I'm also somewhat comforted by the fact that a refund policy is a way to resolve genuine client dissatisfaction: In my view, giving refunds to undeserving people is far preferable to clients actually leaving dissatisfied and possibly badmouthing my company.

larrys 5 days ago 0 replies      
Could you explain this a little more:

"Its the other 50% that are mostly not in good faith anyway that are really bothering me." particularly "not in good faith"

gnu6 5 days ago 1 reply      
You need to develop a thicker skin. It's just business.
signalsignal 4 days ago 1 reply      
Are these repeat refunds or just one-time customers? Also, are you sure of the reason for the refunds is what is bothering you and not that the money from the sale was already spent?
general-marty 5 days ago 0 replies      
Refund is good. I hate chargeback!
Tell HN: Unfuddle (svn hosting) has bad password security
3 points by geuis  2 days ago   2 comments top 2
cheald 1 day ago 0 replies      
Have you confirmed that performing the password reset request invalidates the current password? The way I've seen this done is to have two password fields - one for the normal password, one for temporary passwords. Issuing a reset won't lock out the "normal" password until you log in and change it.

If someone gains access to your email, it's game over anyway.

Khao 2 days ago 0 replies      
Have you tried talking to the guys at Unfuddle about this issue? Everytime I find something wrong with a website or a service I use I first try to discuss it with them before going public about it. They might really love your comment and fix this problem very quickly if their developer can do it.
Ask HN: Is there any open database of book ratings?
3 points by AnupSavvy  2 days ago   1 comment top
glimcat 1 day ago 0 replies      
If you don't care if most of the results are fake, scrape Amazon.
points by    ago   discuss
patio11 18 days ago 3 replies      
Just like YC is equalizing informational asymmetry between twenty-something founders and people with signatory authority on hundreds of millions, I'm really glad that HN contributes to education of prospective employees like this.

I like to think I'm smart. Two years ago, prior to HNducation, many common-as-dirt features of cap tables like e.g. liquidation preferences would have been a totally successful ambush on me. (If you can't explain three ways why 2% of $40 million is zero, consider carefully whether your best interests are being represented in a negotiation with someone who can.)

ojbyrne 18 days ago 2 replies      
So employees complain about options being worth squat.

And founders/managers complain about not being able to hire talent.

I believe that's referred to as a "market disconnect."

Ask HN: What tech podcasts do you listen to?
9 points by rkalla  5 days ago   9 comments top 5
swanson 4 days ago 1 reply      
I listen almost exclusively to TechZing and 5by5's Back to Work[1] these days. Maybe mix in a Changelog[2] episode if I'm interested in the project being covered.

Back to Work isn't really tech or programming related, but both hosts do have tech backgrounds. They mainly talk about things like dealing with fear, workplace issues and personal productivity. There is humor and chemistry so I'd say it might be right up your alley. The first couple episodes aren't that good (it seems like they are circle-jerking each other until you get to know them), but stick with it till at least Episode 5 (one of my favorite podcast episodes ever).

If you find that you like Back to Work, maybe try Build & Analyze after.

Changelog has the technical detail, if you are looking for more of that. They seem to be releasing less often these days (or maybe I'm just not following it as closely) and the whole "we love sass, we love ruby" recurring theme is kind of annoying.

But I really love Tech Zing the most, so I'd be keen to find any other recommendations that are similar.

[1] http://5by5.tv/b2w
[2] http://thechangelog.com/

JacobOscarson 3 days ago 0 replies      
If you want something that's more about how live is as a developer, This Developers Life is very good, and with a solid knowledge about how to create good radio. http://thisdeveloperslife.com/
2nd_planet 3 days ago 1 reply      
* Ruby Show
* JavaScript Show
* Ruby Rogues
* Software Engineering Radio
* The Changelog

As you can see, I like podcasts; but all of them are fascinating and fun! :-D

royalghost 4 days ago 0 replies      
I mostly listen to Java Posse and Stack Overflow podcast. I used to listen to Pragmatic Programmer podcast but I don't find any new one these days.
LVB 4 days ago 1 reply      
I'll second the 5by5 network. Dan has created some great shows. In addition to those already listed, check out The Talk Show (w/John Gruber) and Hypercritical (w/John Siracusa).


Ask HN: Should I work for a startup who's sole purpose is to be flipped?
10 points by justinkelly  3 days ago   12 comments top 8
kbutler 3 days ago 1 reply      
"approached by a funded startup" implies to me that your are being asked to be employee #N. You are unlikely to have any significant equity percentage, and that equity will almost definitely be in a category that only receives any money after the funders and founders are well-compensated.

In short, consider it a job - any payout from the acquisition will be minimal. Evaluate the job based on the work you'll be doing and the immediate compensation you will receive, and even more than when working for a stable company, be prepared to move on whether by your choice or events beyond your control.

PanMan 3 days ago 0 replies      
In the end the purpose of almost all VC backed startups is to have some form of exit: The people providing the funding will want their money back (with a big return), and only really seldom that happens by paying back the investors from profits made.
hundredwatt 3 days ago 0 replies      
If it is a smart team working on an interesting/challenging problem and you think you would enjoy it, then the fact that they want to flip the business should only be a secondary consideration.

Just remember to set your expectations correctly about cash/equity incentives: http://www.bothsidesofthetable.com/2010/09/06/how-to-discuss..., http://www.bothsidesofthetable.com/2009/11/04/is-it-time-for...

willvarfar 3 days ago 1 reply      
Get a hot salary and be skeptical about deferred rewards
nlh 3 days ago 0 replies      
I've always had mixed feelings about this sort of project.

On the one hand, it _could_ turn out wonderfully for all. Spend a few years playing with some fun tech, don't have to worry too much about profits/long-term viability - just keep enough cash to operate, and exit with a nice chunk of change and move on to the next.

On the other hand, it's a VERY risky strategy -- it doesn't necessarily build a fundamentally strong business (it certainly might though) and if the exit doesn't happen (or doesn't happen quickly enough), the company could very easily vanish with nothing left to show for itself.

I personally prefer the more fundamentally sound approach - build something great, viable, and long-term successful. Maybe you exit with a huge acquisition. Maybe you exit with an IPO. Maybe you don't exit and reap profits for years to come. But that doesn't mean that the flipping approach doesn't have the potential to reward or should be avoided (heck plenty of people are doing it and making a ton of money).

I'd say the key points to consider are these:

1. Do _you_ believe this is something that one of the large corporate/whoevers will want to buy in a few years? Or do you think that's an excuse for a lack of a viable business model?

2. Do you like the project? Regardless of exist, it'll be your home for a few years, so you should enjoy the work and make sure it will help your long-term aspirations beyond the next few years.

3. Since the goal is a flip, that means that equity is key. Will you have enough equity to reap the benefits? If the flip doesn't happen, will you be paid enough to make the time spent worthwhile?

Just consider all angles and make sure your interests are looked-after. That's the best advice I can offer.

manuscreationis 3 days ago 0 replies      
Like i'm sure everyone will say...

If the pay is great, and you don't get locked into chasing the dream of a big payout in 3-4 years, and it'll be technology you want to work with, why not?

If it's a good job opportunity otherwise, just don't marry yourself to the work, as its likely to burn you down the road.

If it turns out to be a bad move, or you're otherwise wary, just keep your feelers out there and don't be afraid to jump ship to a better opportunity if you see fit to do so.

cmer 3 days ago 0 replies      
It may actually work, but if it doesn't, their only option will be to fold. If you end up work there, make sure you get plenty of options to benefit from a potential acquisition. Your risk level is higher, after all.
fran6co 1 day ago 0 replies      
Make sure that the product is good and not just a hack to attract buyers. If not you could get in a company that worries more about looking like a startup with a killer product instead of actually doing it.
Ask YC: Do you still use Google Wave?
2 points by Gabriel_Martin  2 days ago   3 comments top 3
Gabriel_Martin 2 days ago 0 replies      
I for one do. I basically use it as a Google Doc, but I also like collaborating within it and using it as a place to let discussions happen, or let multiple people post points around a question or topic. I enjoy seeing the characters update as collaborators post, though there is no unique benefit that Wave offers, that makes me decide to use it, it is simply based on habit, rather than a specific benefit.
mattadams 1 day ago 0 replies      
I think the number of responses to your question may be telling.
Gabriel_Martin 1 day ago 0 replies      
Indeed, it may be.
Ask HN: Hosting Django: Heroku, Gondor, or myself?
7 points by typicalday  5 days ago   1 comment top
iamscanner 5 days ago 0 replies      
I experimented with Gondor and Epio(http://ep.io) at one point when I wanted to get out of hosting Django projects on my own servers - I can't speak to what it's like on Heroku, but Epio was significantly easier to get up and running with than Gondor was - just about as magical and hassle-free as the first time I tried Heroku with a rails app.
       cached 23 September 2011 04:05:01 GMT