Ask HN: How do I get started freelancing? - <AUTHOR>

I know that there are a lot of freelancers on this site. I am interested in doing freelance web development but am wondering how to get started.   How did you land your initial contracts? If you were just starting out again, how would you go about doing so? How much should you charge starting out? <comment><USER2> Instant success took only four years to accomplish: I've been blogging for quite some time now about my business and the kind of things I've done to improve it. For example, Rails programming, SEO, A/B testing, what have you. These are valuable to a broad spectrum of businesses which have rather more money than I do.

When I wanted to do some consulting work, I contacted folks I knew from blogging (and other forms of participation on the Internet) and said "Hey, are you interested in buying my time? I know you need X, you know I can do X very well, how's about I X for you?" (Both of them said "X is kind of meh but if you could Y we'd be thrilled", and happily I could Y, too.)

How much you charge starting out is entirely a market question. I'll give you my typical pricing advice for anything: "Charge more." You will have better clients, because cheapskates are disproportionately pathological clients, and your clients will be happier with your work. Price communicates an expectation of value, and that framing is _shockingly_ durable. Incidentally, if they're hiring _you_ rather than an undifferentiated freelancer in X, then the global market clearing price is _whatever you say it is_.

You can also get inbound offers in a similar fashion. (If I were more interested in them, I'd have a page on my site advertising my availability and making a focused case for hiring me, and I'd optimize that page with all the tricks I use for product pages. And detail exactly how I did it on the page, because that is, after all, a visible indication that I'm good at what I claim to be good at.)

<comment><USER3> _cheapskates are disproportionately pathological clients_

^^^ This! One of my first clients got me at a ridiculously low rate, and has over history been the most demanding client I've ever had.

That said, I used to use this client as a tester to try out different wordings when I've upped my rates, so it wasn't a total loss ;)

<comment><USER4> _cheapskates are disproportionately pathological clients ^^^ This! One of my first clients got me at a ridiculously low rate, and has over history been the most demanding client I've ever had._

"Work for full price or for free. Never for cheap." is the most useful advice on this subject.

<comment><USER5> "Free" is usually a bad deal for both the client and the consultant. The client is automatically in last place on the consultant's list of priorities, regardless of how important his work is. The consultant has established a $0 price floor for her work, making it that much less likely that she'll ever get a good project from the client.

If you do stuff for free --- and we do --- make sure it's different stuff than what you charge for. We are, for instance, happy to give free advice, or to chat on the phone with you about problems. We are not going to be happy to take a little time testing your app.

This isn't just me pontificating. More often than not, when I've tried to help people out with free project work, things have gone badly with the project itself.

<comment><USER2> Clients who get free work also treat it like it is worth nothing, too. My ex- ex-day job decided to do some pro-bono work for academics in my prefecture, and told them "Sure, Patrick will do technical translation for you. For gratis."

This resulted in me getting a stack of journal articles about several subjects. Most memorably, steel smelting and formation of microbubbles. I don't really know much about microbubbles, so the professional thing to do was say "When they said 'technical translation', they really meant 'regarding software' because that's really what we do here". The client said "Who cares? Its free. Just do your best." So I did my best and asked copious questions about steel smelting. "I don't really have time to deal with you this week. But hey, its free, just do your best. We'll be happy." So they got a _journal article they wanted to submit for publication_ with grammatically correct English which almost certainly contained numerous material errors of fact.

It was a tremendous waste of the time and professional reputation of everyone involved.

</comment></comment></comment></comment></comment><comment><USER6> A few tips, in addition to Patrick's excellent advice.

1) Make a nice portfolio. That's the #1 thing people will look at on your site. Do a free site for a charity if you have nothing to show (do your homework too - there's a lot of local business people on the boards of charities).

2) List what you do, explicitly. Don't be afraid of being verbose. You would think most people would assume if you can do a Wordpress site you can probably do Drupal, vanilla HTML, etc. They will not.

They also don't know industry terms, so speak plain English. For example, don't say "I'm going to install a content management system", say "you'll be able to change the text on your website any time you want."

3) Don't underestimate LinkedIn. Make sure everyone you know is aware of what you do and that they can hire or recommend you. Leave recommendations for others.

4) Following on 3, scratch people's backs online. When you order lunch, leave a review on Google Local or Citysearch. Do this for every service you buy - the vet, your doctor, etc. If they have Twitter, mention the great service you just received at @joesplace.

5) Scratch people's backs in the real world. Want to know the secret to networking? Send other people business. If something comes in that's out of your range (e.g., logo design), send it to another firm. You'll absolutely get their attention, and they'll probably reciprocate the favor.

Following on this: other firms are an _excellent_ source of business. There's a ton of print and graphic designers who can't code, and need someone good to pair with. So get good at PSD -> Wordpress, Drupal, etc, and you can always find work.

6) Pricing. As Patrick said, "charge more." If you need a number, start with $50 or $75/hr and go up as you gain experience. Make sure to offer firm estimates when needed (but not without detail! Mockups is worth the $100).

Good luck!

</comment><comment><USER7> patio11 has solid advice. I do B2B contract work (I don't interact with the end client) and have noticed, however, that many of the small web shops that need "help" have a hard time paying you anything good because they've already charged the client 25k for a website and that gets diluted as they take a cut to pay for their expenses.

I've found my niche contracting for other freelancers (particularly designers) who are willing to pay more because they don't have four other employees and related business expenses to care for with that income.

What has been said about "charge more" holds true as well, I heard it a lot before I started but couldn't figure out "how" to charge more (confidence thing). One fine day I had a fellow approach me and said his budget was x, I told him if he doubled it he would have my minimum rate. He said it was a bit high for him and that we would stay in touch; two weeks later he came calling and met my rate.

He was also one of the many "good" clients I've had. High-quality and fairly priced (for you) work just _tastes_ better...

Oh, and as a rule whatever your initial time "estimate" is, double it and you will get a more accurate number (works consistently for me). Avoid any clients that want "a Groupon website built using Joomla but with a custom shopping cart done in three weeks with a budget of four grand. Oh, we also want to be making money the day of launch in three weeks." (true story)

If you build it well and test it well, the project won't nag you long into the future. It will be _done_ when you are _done_ ; I can't stress that enough either. Kind of goes hand-in-hand with the high-quality thing.

Be sure you handle taxes properly too, since I'm a sole-proprietorship I just have a business savings account that I stuff what I withhold. I also keep track of all the things that I can claim as an expense.

(this is the end, I promise) You should also have a way of organizing and tracking your projects; I use heavily customized templates for projects in Emacs org-mode. I write up quotes using it and I also write up the requirements, sprints, payment schedule, backlog, notes, etc... using a project template. I can track my time with it, how much they've paid to-date, and invoice them.

Whatever you use, have a system for tracking and organizing the non-code related material of a project.

Good luck!

<comment><USER8> Have you written up any notes about your conventions/system in org-mode? I'd be really interested to read more from you about this, as I'm using org-mode as well, and it's really helpful reading about how other people are putting it to work for them (I'm fairly new to org-mode myself, and at the moment my conventions are fairly loose.)

<comment><USER7> I haven't written anything up, specifically. I have been thinking about it though. I did do a lot of research on other's org-mode habits and configurations, spent countless hours constructing my own setup, and also getting used to it.

It would be a worthwhile exercise to write about it, it would give me a chance to refine some loose ends as well.

</comment></comment></comment><comment><USER9> There are plenty of good suggestions in this thread about acquiring contacts, so I wanted to mention there is a lot of administration work with freelancing that the sooner you get started on the better. Remember, as a freelancer, you're in charge of taking care of taxes, health care, vacation days, sick days, work related costs, and unemployment time.

I would try save at least half of everything you make. First, 1/3rd should be saved for taxes. Second, save at least 1/6th for misc expenses and everything else. Second, look into tax deductions, there is a lot of associated costs with running a freelance business that you can deduct and save a lot of money. So get a system together for keeping track of expenses, ie gas mileage traveling to a client, cost of new computer hardware, if you work from home then you can deduct the percentage of space your office takes up from your rent (not quite that simple), and electricity and internet, etc etc.

Invoicing is another thing that is a hassle. Keep track of hours everyday and stay on top of it.

The best advice I can give is to really treat freelancing like a business and get a system setup that works for you. Doing business/administrative stuff is not as fun as programming by any means, but the headaches of not doing it up front will be much bigger.

Best of luck to you.

</comment><comment><USER3> I'm a freelancer and get work from two main sources: friends and former colleagues; and RentACoder.

RentACoder has worked very well for me, I rarely use the site to get work and instead get referrals from previous clients. It was painful working essentially for free in my first two weeks, but you make up for it pretty quickly.

One thing I would have done differently is to shout from the rooftops, right from day 1. I only recently took advantage of the likes of LinkedIn to find work, and this has also worked really, really well. Keep building your list of contacts, shout out to _everyone_ you know that you're available and this is the list of what you can do.

Charging is simple: when you don't have many clients, drop your prices. As you get more and more work coming in, raise your prices. Keep doing so until your work drops off, then drop your prices a bit, and keep doing so until you get work. I was terrified the first time I told a few clients I was increasing my rates, I thought they'd all desert me! Break through this psychological barrier, the rewards are there for you if you do :)

Finally, get prepared for the fact that from time to time you're going to have to wait longer than you want to get paid. I've yet to get properly burned, but have definitely had to wait to get my cash from time to time.

<comment><USER5> Bear in mind that one of the primary things freelancers are compensated for is their ability to find clients and to accept the risk of dry spells. If you outsource those things to a freelancer meat market site, you may end up hurting your rate.

Using Rentacoder to build a referral network, which you end up mostly relying on, seems like a fine strategy.

</comment></comment><comment><USER10> Do you mean you want to be a freelancer for other agencies or to work directly for clients?

When we set up our agency, here's what worked:

\- Get your own site set up so that you have a web presence and can start to build a brand.

\- You need to build your portfolio, so do a bit of work for cheap/free if you have to. You want to do this quickly, if you do a site for free the client will be more willing to go ahead straight away as it requires little decision making. We did a website for a primary school and a couple of photographers we knew to start off with.

\- You're probably going to need to have low prices to start with, as smaller businesses are more willing to give a new business a shot, but won't have as much of a budget as bigger companies. Over time you can decide where you want to take the business and start charging more as you build a reputation. Your aim at this point is to build a portfolio, so you can charge more later on.

\- Classified ads on Gumtree or whatever the equivalent is in your area. We met two of our biggest clients through classified ads (just be honest, link to your site and try and get across your ethos).

\- Reach out to personal network, previous employers etc... they already trust you (hopefully) and may have work that can keep you going.

\- Get involved with a co-working space, this has 3 main benefits: 1) regain some of the social element of work, which you may have lost if you previously worked in an office environment. 2) Meet other business owners and freelancers that can offer advice and are a good sounding board, and interesting people usually too. 3) You might even get work from other business working at the same space. We've got a couple of clients as a result of using a co-working space.

\- Cold calls! I could write a whole post on this, but basically, try and figure out a niche and what your hook is; Why are you going to go after a particular niche? Have you worked in this industry before? Can you offer a service that will add value to them? Are you in their area (geographically)?

Remember this is one of the hardest bits of going it alone but once you gain some momentum and build a portfolio it will get easier.

<comment><USER5> I have never had any luck with cold calls (we haven't pushed hard on this though). Can you tell me more about what your experience was?

<comment><USER10> Yeah sure. It needs perseverance and, well, a bit of luck. The main thing that will help is SHREK:

 _Say who you are_ : "Hi I'm [name] calling from [company], we're a web agency nearby that specialize in X."

 _Note you may have to repeat this step more than once as you will most likely get through to a secretary. If this is a totally cold call (you've not spoken to the person before, you don't know their name) you should make it sound confident and like there shouldn't be any reason not to put you through to how it is you need to speak to. If you don't know who you need to speak to, ask for a generic title, don't be afraid of asking too high (e.g. "can I speak to your CTO?")_

 _Hook_ : "I've just been looking at your site / I spoke with someone last week / We met at a trade fair / I know X, who apparently is an ex-colleague of yours / We've just done a website for [a key competitor of theirs] and wondered if we could do something for you."

 _Reason statement_ : Why should they be interested? "We have a new web design service we've aimed specifically at X"

 _Key questions_ : If they sound interested, figure out how important this could be to them. "How do you update your website currently? / How much is X costing you? Have you considered integrating your website with X?"

The above would be easier if you have a specific product, but if - like us - you're a service-based agency, you'll have to play it by ear a bit, or maybe create specific products for industry niches. I'm not a natural salesperson at all, but one of the first things we did when we started our company was to invest in a training day from an extremely good salesperson in our network. It's paid for itself many times over.

One of the hardest things is to keep motivation when you have a list of phone numbers in front of you. This is a game of numbers, sooner or later you'll call someone who is currently after exactly what you're selling. In order to do maintain enthusiasm, 'visualise success', such as what the potential new business would do for your company, for you personally and professionally.

Obviously there is a lot more to this. Does anyone else have any other tips?

</comment></comment></comment><comment><USER11> One thing I did was check out members of local tech community groups -- googled the names and found something about them (say an article/post they wrote). Then I would write a personal email with some comments directed to that person specifically, with a quick note about me and how I might be able to help them. It's time consuming but does get responses if you choose people carefully, and don't spam.

I also did pro/low bono work for organizations with lots of members -- it's a good way to get your name out b/c you're identified as a potential local resource.

Most people/orgs that I work for want fixed pricing -- I handle that by writing up an estimate that breaks down each task/feature, how long it takes to implement that feature, and my hourly rate. That way you still give them a set price, but you get the hourly rate in their heads, so you have a basis for pricing changes/enhancements. You can also give first-time clients a "first project" discount -- that way they are more inclined to hire you, but also have an idea how much your "real" price is for future work. If you are really good, they will hire you again.

For an hourly rate I think the advice already posted is good -- I started low and bumped up my rate with each new client. I typically charge for-profit companies more than individuals/non-profits. If you think your rate is too high, it's probably right on target. :) You can always renegotiate down if the rate is a dealbreaker, but you can't renegotiate up.

Scope creep can kill you -- in my estimate I write as specifically as possible what I will do (based on requirements discussions), and more importantly what I WILL NOT do. You can't catch everything, but that goes a long way toward resolving conflicts. When there's a material change/addition, you can then price that new task accordingly. People will take advantage of you if they can get changes/additions for free.

A good web presence is important -- I get calls from out of the blue from people who have seen my web site, and those have turned into long-term relationships. Do some SEO to make sure you're visible to your local area.

</comment><comment><USER12> This is going to scare the pants off of you, and I'll get downvoted into oblivion but:

Give your first client a free website.

<comment><USER13> Did you do this for your first client? If so, how did it all go?

I did something similar - I offered to build the foundation of their website (a social networking site) for free as a trial. It only took a few nights and they liked what they saw. Shortly after, we negotiated and agreed upon a rate to continue development.

<comment><USER12> My story went like this:

I left development to start consulting, and in the beginning I still had no idea of a competitive but profitable price stack. However I was very business minded, a week prior to leaving my field I just finished reading Dale Carnegie's book "How to Win Friends and Influence People".

Before I go further, let's stop and take a pause: this is a book that everyone needs to read, especially freelancers. I say especially these individuals because your livelihood is predicated not on a parent company managing image and taking a considerable chunk of the impact if you mess up. That being said, it is vital that freelancers read this book page for page, front and back to get a firm grasp of how to interact with people beyond "Do you need a website? Here's your website. Here's an invoice, alright have a good one". I read this book four times, and I'm reading it once more because in addition to being incredibly insightful: Dale Carnegie has a very conversational way of writing that makes this book an absolute joy to read.

Alright, ready for part two?

I had no idea of a profitable price stack, but after reading this book I had a good idea of how to approach people, propose ideas, listen to their needs and collaborate on a service that I could provide them. Still, I was stuck on what to charge. An idea came into my head, an old one that I'm sure is all over the web, debated from both sides, but an idea none the less. And this is what I told my first client:

"Before I quote you on this project that we're working on, I want to know what you think of the idea of free".

He was hooked, I had his attention. Free is an incredibly powerful word provided your ulterior motive is just. We worked together for three weeks as I helped him build his business, and as the time grew near for my involvement to end I gave him another incentive.

I offered him 5% on the next sale if he recommended a client that signed a contract to procure my services. By this point, I figured out that working on a retainer after concluding a 'sale' and ending a contract with a very happy client would be easier to secure than a rate structure that was predicated on the idea that I might end up having to bill more hours than was anticipated. The caveat was that he give no indication to whoever he would refer to me that he got free services, that was up to his discretion. I did not give him a line, a pitch or any sort of script. He ended up with $375 in his pocket, and a new customer.

He ended up becoming my personal accountant.

<comment><USER13> Wow, your first client experience sounds ideal! Not only did he end up as your personal accountant, but you had him working for YOU as he looked for potential clients. That's a great use of resources and definitely sounds like it was worth your time investment for those few weeks.

Thanks for sharing and for the Dale Carnegie recommendation!

</comment></comment></comment></comment><comment><USER14> In my opinion the main thing that you need to do is get out there, meet people and make friends with them. All those conferences and lunches will pay off in the long run, and probably give you a lot of opportunities for work down the line. If you are really serious I also suggest that you go to the state department's page, and register an LLC so that you can start getting tax benefits for work related purchases. If you are interested in my story of how I've started out freelancing as a college student myself you can read it after the jump.

Here are some good resource websites: <http://freelanceswitch.com> <http://workawesome.com>

I go to an art and design college so it is probably easier for me to get connections for work, but here is what I've done as a student. Making friends with staff and faculty has been of a huge benefit to me. I've gotten a couple small jobs, a work study and an internship simply by being friendly to other people in my major, and staff at the school. A teacher in my program who I took a two classes with saw an art piece I did (web design related) at an exhibition in the schools gallery space, and referred me for a flash job similar in nature to another client of his that he didn't have time to complete. I got a work study at my school's in house design firm as a referral from a student in my program who knew my skill set. I also got an internship this summer in NYC as a result of being casual friends with one of the study abroad staff. In the spring I attended a Flash Developer's conference, and made connections with several people there, and one of them whom I'm communicating with now seems like a really promising opportunity for some contract work.

</comment><comment><USER15> 1> You need a portfolio. I don't know what sort of development you're looking to do, but make 3-5 nice looking sites/programs/apps. Remember, you can't show off snazzy technical stuff (as clients won't understand it), but you can make it look pretty or do something that would interesting to a layman.

This should likely take you a couple months to finish, if you're putting the quality in I'm talking about.

Now you can do these for free for someone else, but that makes the relationship a hard one to transition to paid eventually.

2> Don't ever charge low amounts of money. The people who offer work for that amount are often horrible to you. I'm not saying start out charging $150 an hour, but get far north of $20 an hour for any sort of development.

3> Borrow or beg a standard contract from someone else. Include cancellation clauses, so the manner in which a cancellation occurs is dictated by prior agreement. Make sure you include what payments are still due, who gets what rights to use code or already finished products, etc.

4> Just start! Seriously, you'll learn most of this by doing. Remember though, these people _aren't your boss_ like at work, they're clients. If they say jump, you need to make sure you _Really should be jumping that high_. Oftentimes, they'll make outrageous demands and the first alternatives that come to mind aren't the only ones.

5> If they ask for extra work: Attach price tags to it. If it matters to them, they'll buy it. If it doesn't, they won't.

</comment><comment><USER16> Jerry Weinberg, in _The Secrets of Consulting_ , recommends charging about 4 times the hourly rate that you want to make. Thus, if you think you could live on $40/hour (about $80,000 a year), you need to charge about $160 an hour. This gives you the buffer that you need for unplanned downtime (illness, early termination of contracts, lulls in business) and planned downtime (vacation, training, business development activities). While you could argue the exact proportion, I think this is good advice, based on my experience as a consultant.

</comment><comment><USER17> \- Make yourself visible, create your own webpage,portfolio page and link it everywhere, starting with your HN profile. You don't have an email address there right now. So you might've already lost 1-2 potentials that didn't bother to signup/reply just to get your contact address.

\- Make some apps on your own, build a portfolio. Just 1-2 should do it. There's google appengine for free hosting.

\- Try Elance.com, i've had better luck and more pay per effort on projects there.

Also send me an email with your hourly rates.

</comment><comment><USER18> I'm surprised that no-one has posted "So you want to be a consultant?" by Steve Friedl. This article helped me to get started:

<http://unixwiz.net/techtips/be-consultant.html>

</comment><comment><USER19> I added myself to <http://hnhackers.com> yesterday and I got a contact from a potential client today. Even if that's the only client I get from it, it was worth it.

You should charge twice the hourly wage you'd make working for someone else. Some more details about why: <http://antipode.ca/2009/what-your-time-is- worth/>

</comment><comment><USER20> I landed my initial contracts through registering on get a freelancer (GAF), getacoder, rentacoder (RAC), all the common freelance sites. It is very competitive, and there are many bids posted on each contract/job listing. Most of the bids are generic replies from Indian companies, offering web services. They have a lower living cost compared to US/UK, so that is why they are sucessful in this industry. Setup a keyword alert on your skill and bid often and respond to exactly to the requirement, in order to 1-up on them.

My advice is to find your niche. Do something different. When you bid on something that has a perfect fit to your skills you will have an advantage. Get in contact, build a rapport by responding fast, thoroughly and accurately. If possible, send some sample work or ideas on how to solve a problem. Try and bid on something you are likely to win, and always bid on a project that when you look back, it will seem like a stepping stone in what you learnt or experienced. Don't bid on dull jobs or those that require little skill. There are plenty of people around for that already. Be smart.

If I started over, in hindsight, maybe I would have taken a different route, by researching companies and building a network of contacts, e.g. through HN or Linkedin. I would be more confident about my skills too.

One last tip: work hard and read a book on self-motivation. Good luck! :)

</comment><comment><USER21> Start with building an app that you can be proud of. Others have mentioned working for free, but if you're going to do that, you may as well build an app for yourself.

Treat it as a client project and be willing to put some money into it to keep yourself committed and ensure its success.

Once it launches, you have an instant portfolio and hopefully some Github contributions that come out of it that you can point to.

This is the route that I am going with. I'm about 60% done with my app.

</comment><comment><USER22> My best freelancing success has always come from former colleagues and managers already familiar with my quality of work. I'm not sure what your professional experience is, but if you have an existing network to leverage it will make your ability to secure projects a lot easier. I've also found that as a general rule of thumb, you can usually charge your former hourly salary +50% (and sometimes more) and nobody will bat an eye. If they do, you might want to reconsider them as a client.

</comment><comment><USER23> When starting out freelancing you could attract clients by offering to complete a project first and let the client pay what they think it is worth.

<comment><USER24> A discussion on "what you think it's worth" pricing from a couple months ago:

<http://news.ycombinator.com/item?id=1279660>

</comment></comment><comment><USER25> I have found that having a good network helps. People who know you can recommend you to their contacts. You should hang out at the local barcamps and other events and let people know that you are available for freelance work.

Building a website and writing a blog helps too. Lots of time people have contacted me through my blog for work.

Best of luck

</comment><comment><USER26> I need some quick cash, so I'm thinking of taking area restaurant menus and creating a quick iphone web version for each one, then walking in to the restaurant, showing it to a manager, and asking if they want to pay a couple hundred bucks for it. Hopefully a few will buy it and it will lead to more work down the line.

</comment><comment><USER27> This question comes up a lot (because it is important.)

I have the opposite question: How do I find good freelancers?

<comment><USER28> Network.

</comment></comment><comment><USER29> You could start by putting some contact info and a portfolio link in your profile.

How much time do you have for freelance work? What are your rates like?

</comment><comment><USER30> There are freelance camps all over North America, each sessions info is stored on wikis. One that just finished is Vancouver Freelance Camp <http://www.thenetworkhub.ca/freelancecamp/> and the wiki is updated with info

</comment><comment><USER31> Here are my best 5 tips that I can think of off the top of my head:

<http://togger.com/breck/tips_for_freelance_developers>

</comment><comment><USER32> I'd suggest doing open-source work, blogging, and presenting at meet-ups. Sharing your knowledge with other people is a great way to make friendly connections.

</comment><comment><USER33> jacquesm has a pretty good guide: <http://jacquesmattheij.com/be-consultant>

</comment><comment><USER34> Want to go freelance? Then you need one thing more than anything else:

Confidence.

If you don't have it, get it. You can't pick up women or clients without it.

<comment><USER35> Re: Confidence - fake it 'til you make it.

I started with getting phone numbers from women. Detach your self-presentation from your inner self and look on this as an acting exercise. Mentally model what you'd look like if you got phone numbers from attractive women all the time. Look at scenes in movies with characters you like. Practice what you come up with on attractive women. Change your presentation a bit and observe the results.

Done correctly, this process results in a lot of phone numbers. By itself, it won't get you laid a whole lot. However, it can give you a framework for practicing a confident presentation in a context where you are faking it. Also, this happens in front of somebody who already knows they have something you want.

<comment><USER36> As much as I hate to plug this movie, "Cruel Intentions" had some amazing scenes where the main characters did just about every action correctly from this perspective.

</comment></comment></comment><comment><USER37> Do you already have the skills necessary? If so, beg everyone you know for a cheap job, and then beg them more for referrals. In freelance, 95% of your work will come from your network of clients and referrals.

You could also scrape craigslist and get your first initial gigs that way.</comment>


Mark Pilgrim on Joel Spolsky's "Martian Headsets" - <AUTHOR> http://diveintomark.org/archives/2008/03/18/translation-from-ms-speak-to-english-of-selected-portions-of-joel-spolskys-martin-headsets <comment><USER2> A little bit too vitriolic for my taste, sorry.

This appears to be the case with Mark Pilgrim's latest posts for some reason. See also: Pilgrim flipping the Bozo bit on Linus Torvalds:

[http://diveintomark.org/archives/2008/03/07/iphone- gpl#comme...](http://diveintomark.org/archives/2008/03/07/iphone- gpl#comment-11443)

<comment><USER3> I gotta disagree with you. If anything, Pilgrim was too easy on him. Frankly, I think someone could make a wicked "Fake Joel Spolsky" blog. The tag line could be: "HEY! I wrote Excel! What have you done douche bag?"

</comment></comment><comment><USER4> This is a really, really, bad article. I got nothing from it.

I think this is a case where I would use a down-vote on an article submission. It has nothing to do with being pro or anti microsoft. The submission is just feeble, ugly, immature, and a waste of our time.

</comment><comment><USER5> This guy is childish... Why was this even posted?

</comment><comment><USER6> Wow. That sounded like slashdot. Please reasoned cool-headed rational arguments please.

First argument: This self-fulfilling prophecy has been brought to you by Google Adsense: funding Slashdot trolls since 2003.

What does this even mean? Does it have any substance?

Second argument: I demand documented standards with open reference implementations. That's why I only develop with Microsoft technologies.

How does this counter the point that there is no reference implementation for web standards. What Joe did or did not do is completely irrelevant to the discussion as hand.

Third argument: No one has ever written tools to encapsulate the world's collective understanding of standards; you must start from scratch like everybody else. Freedom 0 buys you nothing unless you can audit the source code yourself. "Faith" in science is no more well-founded than "faith" in religion unless you can personally reproduce the experiments.

This is the closest that the article comes to actually making a reasonable point. Even then, it doesn't go very far. Instead of clearly stating the point, the author just uses sarcasm. Sarcasm is very effective in arguments but only as support, not as the core.

Fourth argument: Hi, I'm Web Developer Barbie. Pull my string and I say, "Standards are tough! Let's go shopping!"

This is ridiculous. Is there any evidence attached either way? At least Joe added an excerpt of a standards document. I have read standards documents before. I didn't find them illegible but reading them was a painful experience. It is not a very far leap to assume that there are many web developers who will not put in the time required to understand them completely.

Fifth argument: I have never heard of test suites.

Actually, Joe addressed this point specifically as follows: There is no practical way to check if the web page you just coded conforms to the spec. There are validators, but they won't tell you what the page is supposed to look like, and having a "valid" page where all the text is overlapping and nothing lines up and you can't see anything is not very useful. What people do is check their pages against one browser, maybe two, until it looks right. And if they've made a mistake that just happens to look OK in IE and Firefox, they're not even going to know about it.

Sixth argument: I am high as a kite.

See arguments 1, 2, and 4.

Seventh argument: Wait… you mean you can… see what I'm typing?

See argument 6.

Eighth argument: Microsoft has always had the best interests of the web at heart. Microsoft has never encouraged web developers to use Microsoft-specific technologies. Microsoft has never shipped a browser that rendered pages differently than its predecessor and then let it stagnate for six years while the rest of the world moved on.

Yes, MS does have a jaded record when it comes to supporting standards. It may be entirely their fault that we have this standards mess with IE now. How does that have any bearing on Joe's prediction?

Ninth argument: I know IE is going to continue to lose a lot of market share, and I'm publishing this now so I can blame you dirty fucking hippies for it later.

This is ridiculous. Can we please have reasoned criticism where we do not resort to ad hominem attacks and/or act like 13 year olds?</comment>


A new experimental "similarity search" algorithm. Thoughts? - <AUTHOR> http://eser.org

<comment><AUTHOR> Currently, we're text-mining the english version of Wikipedia.

There's a lot of room for improvement: optimizing for speed and pruning down the results are at the top of our "TODO" list.

Also, the UI is simplistic -- that's because we've been spending 99% of our time working on the algorithm in matlab.

But, we wanted to get something out -- warts and all -- to get some feedback on the general idea.

We'd value any feedback -- positive or negative.

<comment><USER2> Pretty cool, what is the kind of math behind it? PLSA?

<comment><AUTHOR> Yes.

At this point we're really constrained by the number of cores we're running on.

Once we can get a hold of some more servers, we should be able to drastically improve the performance and prune many of the results.

We'd also like to run the algorithm on additional corpora. Specifically: (1) the US patent database (back to 1975); and (2), a collection of United States federal and state case law (the JURIS database).

</comment></comment></comment><comment><USER3> For what it's worth I searched for "google.com" and got "The International Society for Cryptozoology" as a top hit. Not sure how useful it was but I did learn that there was such a thing as Crytozoology and my day instantly got 10% better.

I actually use this one all the time: <http://www.similicio.us/>

I think it uses delicious tags.

</comment><comment><USER4> I tried Bach and it appears that it just returned Wikipedia articles that mentioned Bach. My initial expectations were more along the lines of Google Sets.

What are the shapes on the homepage for? It was kind of intriguing that they seemed to do something, but I didn't know what.

<comment><AUTHOR> You have to click on the bold links to "drill-down". So, if you click on "johann sebastian bach", it will give start to give you results such as: "Vivaldi's Cello" and "History of Germany"

Currently, we're limited to running on one server. Therefore, the algorithm is restricted to running on the english Wikipedia corpus.

It appears that the "skip slope" metaphor with the shapes was a bad idea.

Each shape is a ski-slope difficulty rating symbol. So, Green -- "easy" -- will take the meaning of your query more literally. Double black diamond -- "advanced expert" -- will try to extrapolate hidden meanings in your query. It will suggest topics that are less obviously related to your query.

<comment><USER4> The difficult rating thing is really really clever! I wish Google had that. Only problem is that I usually ski near home (in Europe) and the convention over there is colors (green, blue, red and black) instead of shapes. Still, kudos for that feature!

<comment><AUTHOR> Good information. I didn't know that. Also, not everyone ski's.

I'm trying to think of a way to make the functionality of the shapes more obvious.

</comment></comment></comment></comment><comment><USER5> Besides the fact that it thinks too long, what is new about it, what are you trying to achieve?

I search for "Test" and results were not really relevant.

<comment><AUTHOR> Thank you for trying it out.

Re: performance \- It's mining through ~40gb of data on server with 8gb of ram. \- Also, we're not using caching of search results -- it computes on-the- fly for each query. \- If we can get a hold of more servers, we should be able to bring down the query time below 1 second.

Re: query "Test" \- You have to search for something you're interested in.

<comment><USER5> From my own experience 40GB and 8GB RAM is very good it should be enough for better performance. I don't think you need more servers at this time.

Think about it in order for you guys to have a meaningful search engine you will need data in the TB range how many servers will you need then? Spend more time fine tuning your search algorithm and processing you should get better performance out of what you have now. Then your repository will grow proportionally to your resources and you should be fine.

When I said the search for 'test' did not return good result I meant you should do more work on relevancy.

<comment><AUTHOR> It's a very tough problem. Queries such as "square", "blue", "fast", etc... will yield very poor results.

PLSI tends to perform very well on more specific queries, such as "Paul Graham", "silicon graphics", etc...

The problem with PLSI is that it is extremely computationally expensive -- which is why most internet-scale search engines don't use it.

Our innovation was figuring out some tricks that have allowed us to improve performance dramatically. However, there is obviously still room for improvement.

Our goal is to satisfy 80% of the queries with decent results -- and to leave the other 20% (square, etc...) to someone else.

The interesting thing about PLSI is that it's able to rank documents from the text alone -- ignoring the link structure and other metadata.

Therefore, we're thinking our algorithm will make the most sense in situations where there is lots of textual data without web-like link metadata.

The two scenarios that come to mind where people need to text-mine documents outside the metadata-rich web are: (1) windows file shares on corporate intranets (2) large volumes of legal documents inside law firms

Text-mining wikipedia is a proof-of-concept at this point

</comment></comment></comment></comment><comment><USER6> It like google with schizophrenia. Pretty impressive. It seems like drugs and alcohol as mind enhancer for creative people (writers, designers, painters) is obsoleted now :-)</comment>


Pure Randomness Extracted from Two Poor Sources - <AUTHOR> http://cacm.acm.org/magazines/2017/1/211100-pure-randomness-extracted-from-two-poor-sources/fulltext <comment><USER2> > _Some researchers have even speculated, especially since the disclosures by > Edward Snowden, that commercial hardware sources could be subtly manipulated > to make the codes easier to break by the U.S. National Security Agency or > others._

Speculated!? I think it's pretty well established by now that Dual_EC_DRBG was intentionally weakened.

\---

Abstract, etc.: [http://eccc.hpi-web.de/report/2015/119/](http://eccc.hpi- web.de/report/2015/119/)

Paper (PDF): [http://eccc.hpi- web.de/report/2015/119/revision/2/download/](http://eccc.hpi- web.de/report/2015/119/revision/2/download/)

Related article from 17 May 2016: "Academics Make Theoretical Breakthrough in Random Number Generation": [https://threatpost.com/academics-make-theoretical- breakthrou...](https://threatpost.com/academics-make-theoretical-breakthrough- in-random-number-generation/118150/)

<comment><USER3> Dual_EC_DRBG was software, not hardware. A hardware compromise would be much (much!) harder to detect.

<comment><USER4> Not necessarily. The hardware guy that got me started on all that was detecting them all the time. Some were really hard but others were obvious once the veil was pulled back. He said he stayed doing that sort of thing as did many others. Constant cat and mouse game. Your statement is true for software people where it will be anywhere from challenging to impossible for them to detect the hardware subversion.

<comment><USER3> I'm using the word "compromise" to mean the _deliberate_ introduction of a vulnerability. I have a hard time believing that your friend was detecting those "all the time" because I have a hard time believing that there are a lot of deliberate hardware compromises in the field, and an even harder time believing that these are easily detectable.

I can believe that your friend finds non-deliberately-introduced hardware _vulnerabilities_ all the time, but that is not the same thing.

<comment><USER4> Oh no. You're assuming the hardware field is about simply producing hardware and that's it. He taught me that they (a) know R&D cost a lot, (b) assume patent trolls will hit them constantly so they obfuscate the hell out of everything anyway, and (c) therefore steal each others stuff in whatever way they can while not advertising specifics on how it works to avoid patent trolls. The result was all kinds of hardware companies were ripping off all kinds of others with constant remixes on top of a cat and mouse game for security that makes software security look lame (my impression). He said competitors even sometimes cloned the best stuff down to the transistors where even he had trouble telling the fakes of his company's parts.

The defense was to make it hard to copy. They did crazy tricks on the digital level. He did stuff on analog level as well since his area was mixed-signal. His favorite technique was splitting the function between digital and analog since so few analog people existed to RE that stuff. He pointed out that digital tools couldn't even see analog stuff. Top that off with obfuscation to wild degrees. We stopped hearing from him after he changed employers, though.

Some of the things he predicted came true. An example was the A2 backdoor which was the kind of analog subversion he told us happened regularly. Another included a fab compromise which his trust model got me thinking about and predicting in the abstract. That the guys statements started coming true too often in various ways among hardware people and in CompSci papers means I'm inclined to believe him that hardware is a scheming a business as he claimed it to be.

<comment><USER3> OK... but none of that sounds like it would result in deliberately introducing _security_ flaws of the sort under discussion here. Let's not forget the context of this discussion:

"Some researchers have even speculated, especially since the disclosures by Edward Snowden, that commercial _hardware_ sources could be subtly manipulated to make the codes easier to break by the U.S. National Security Agency or others." [Emphasis added]

Obviously such attacks are possible, but are they likely? I can see how the cat-and-mouse game of IP protection would lead to all kinds of dirty tricks, but what would be the profit in introducing a backdoor that could be leveraged to break _crypto_ or an RNG?

<comment><USER5> I remember reading that the Linux kernel does not use Intel's hardware RNG alone for /dev/(u)random precisely because of concerns that Intel has backdoored the RNG.

<comment><USER3> Yes, that's true, and that is a legitimate concern. I personally would not trust Intel's RNG because it is implemented in a way that deliberately hides some of the underlying implementation in a way that would make it impossible to tell if it's backdoored. That is my original point: it is much harder to tell if hardware has a back door than software.

<comment><USER5> But does this not provide an example of an intentional backdoor in a hardware RNG?

I'm actually going to be diving into the literature on hardware verification, with a focus on how to design IP that can be objectively verified by a third- party. If I find something good, I might even do my PhD on this topic.

<comment><USER3> > But does this not provide an example of an intentional backdoor in a > hardware RNG?

I don't know. No one knows outside of Intel. That's the whole point.

In fact, it's possible that even _inside_ Intel no one knows because a backdoor could have been surreptitiously inserted by a rogue engineer working for, say, the Chinese government, who has since left the company! I have no idea whether Intel's internal design review processes are thorough enough to prevent this. For someone who knew what they were doing and who was in a position to influence the design to insert a back door without being noticed would not be particularly hard.

> I might even do my PhD on this topic.

Good luck! Keep us posted.

<comment><USER5> Ah yes, the insider threat is probably the toughest issue to deal with. At this point, I guess we can only hope that the RNG isn't backdoored.

Thank you. I'll be sure to post something to HN once I've made some progress. That will take time though.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> So the paper is called "Explicit two-source extractors and resilient functions". Not sure why the article goes out of its way to avoid actually telling you this, or why there's quotes from about seven people who aren't the authors. I _think_ it's the same as the top link in further reading.

The ACM cite for the STOC conference, which isn't linked, would be: [http://dl.acm.org/citation.cfm?doid=2897518.2897528](http://dl.acm.org/citation.cfm?doid=2897518.2897528)

</comment><comment><USER7> The introduction is a very nice example of how a lot of academic cryptography works and what disconnect there is often between applied and academic cryptography.

They quote Bruce Schneier, basically saying that nobody needs this and we already have plenty of ways to generate secure random numbers. This is countered with some handwavy arguments why you'd need them anyway that aren't really explained.

The truth is: We don't need any theoretical work to generate better random numbers, because we know how to do it. All security problems about random numbers come from the fact that people aren't using the secure random number sources we have.

<comment><USER8> A good understanding of randomness has much further implications than just generating random numbers for cryptography. This work is not indended as a practical method for generating random numbers, I think.

Randomness is very important for algorithms. It is currently unknown if being able to make random choices adds expressive power to efficient algorithms (the P=BPP question). Being able to generate good random numbers from a weak source can lead to more efficient determinsitic implementations of randomized algorithms, for example.

<comment><USER7> Seeing it like this is totally fine. I.e. this is basic research to better understand the nature of random numbers.

It just happens that all so often I see vague justifications of the form "Random numbers are important for crypto _THEREFORE_ we need fancy random number thing X" \- however the logical link between the two is not explained in detail (X may be quantum RNGs - or papers like the above). I won't blame anyone for doing basic research. I just don't like it if people advertise their basic research with practical implications that simply aren't justified.

</comment></comment></comment><comment><USER9> I'm amused by the paper's abstract stating that "explicit construction" when I can extract nothing so concrete from the paper (though a monotone boolean function on N bits resistance to any coalition of size N^(1-t) for any positive t sounds interesting to me-- achieving one for N^0.5 is well known and simple).

I think I need a non-randomness extractor. :)

</comment><comment><USER10> It's sad to see such immense effort to "extract" and "preserve" entropy, when anyone interested could have all the quality random numbers they need from simple and well auditable electric circuit. Somehow this is not in anyone's interest, just let's all use PRNG.

<comment><USER11> Isn't junction noise temperature-dependent? Aren't most hardware noise generators, like lava lamp, physically large?

<comment><USER10> Where did you get such impression that it must be either? There are many many possibilities, not just junction noise or lava lamps. Example: [http://www.loper-os.org/?p=1427](http://www.loper-os.org/?p=1427)

<comment><USER12> I think Cardano uses avalanche noise.

[http://trilema.com/2013/snsa-first-product-the- cardano/](http://trilema.com/2013/snsa-first-product-the-cardano/)

> E) Entropy generator. This is an avalanche noise array, with some sanity > checking in place.

Have I misunderstood?

</comment></comment></comment></comment><comment><USER13> > The practical implications may be modest for now, though. Security > specialist Bruce Schneier, for one, does not see any urgent need for better > random numbers. Schneier helped create the widely used Fortuna pseudorandom- > number generator, and says there are already many adequate sources. "In my > world no one's worried about this," he said. "These systems already work" to > provide secure communications when attention is paid to all of the other > implementation details. "We have lots of problems; this isn't one of them."

Is this true? It seems to me that /dev/random could use some serious speedup.

<comment><USER9> /dev/random could be much faster if it was using state of the art techniques.

Presumably it is difficult to change because of concern about bugdoors and whatnot-- an anyone who really needs it to be fast will implement those techniques in userspace and just use /dev/random to seed them.

</comment></comment><comment><USER14> Does it relate in any way to Von Neumann's trick[1] to create a fair coin from a biased one?

In short: if you don't trust the fairness from possibly biased coin flips, then don't look at individual outcomes in a sequence of (H)eads or (T)ails, but only at H,T or T,H combinations.

[1] [https://en.wikipedia.org/wiki/Fair_coin](https://en.wikipedia.org/wiki/Fair_coin)</comment>


UCF selling simulated Martian dirt–$20 a kilogram, plus shipping - <AUTHOR> https://phys.org/news/2018-09-ucf-experimental-martian-dirt20-kilogram.html <comment><USER2> I found this much more amusing when I read it as $20 + shipping from mars. Theoretically I wonder how much that would be?</comment>


As websites become games: Understand the trend - <AUTHOR> http://thenextweb.com/socialmedia/2011/01/11/as-websites-become-games-understand-the-trend-with-the-gamification-encyclopedia/

<comment><USER2> For some websites, this makes a lot of sense.

A language learning website that I use recently added trophies to their beta. They previously already had a points system for studying completed and contributions as well. It really works well and helps motivate you a little.

For others, not so much. If Amazon added things like that, I would just scoff and ignore it. And if possible, I'd probably disable it. I don't need a retailer to game me into buying things.

<comment><USER3> _I don't need a retailer to game me into buying things._

Yeah, and I doubt that would work anyway. It's too easy to go from "ooh I got a trophy" to "I am not your goddamn trained monkey!".

</comment></comment><comment><USER4> There have been websites that have done this for years. They are called on- line arcades and people go there to play games. You can even sell advertising on the site to make money. Go figure.

But gamifying something that is not a game, well, that must be different, right? Somehow...? I'll use the word "engagement," there we go.

</comment><comment><USER5> No. Stop creating crappy website/app that have no content/value and expect me to contribute free content/value for it using points and badges.</comment>


Ask HN: Whats the best and worst parts of being a web developer/designer - <AUTHOR>

I'm part of a start up to make web designers/developers life easier and would love a look into the best and worst parts of the job. I'm mostly intrigued about the design and development of smaller scale websites or prototyping website but if there is anything that grinds your gears about your day to day workings I'd love to hear it.<p>Thanks in advance for any help at all. <comment><USER2> The difference between static site and full fledged CMS. What if I just want to design something and do some simple DB calls? Don't want something big like wordpress and don't want to dive into some framework and setting up a DB just to access a DB on one or two elements of the page. I want something in the middle that a designer can just hit a couple endpoints and not have to worry about the backend stuff.</comment>


Ask HN: Will this be the end of Airbnb? - <AUTHOR> Context: living near Amsterdam, following the situation in Amsterdam (pre-Corona) closely, founder of Kamernet.nl - the largest marketplace for student rentals in the Netherlands.
---
Once the various quarantine measures have been lifted, and international tourism and travel rebound, I am hypothesising that cities will want to know (and control) where (foreign) tourists stay in a city, and that renting out rooms/apartments to tourists without a specific license will be banned.
HN: your views? <comment><USER2> One thing I think we'll definitely see is a reduction in the amount of apartments available for rent on AirBnB. I've seen reports that after lockdowns went into place in Portland OR and SF, that there were thousands of new units listed on proper real-estate websites for long-term lease. That tells me that landlords who were taking units off the housing market and using them for short-term rentals, might have fewer AirBnB units after this is all done. For a while at least I think AirBnB will be more of the "rent a spare room in our house" units again, rather than the entire apartment in a major city that's displacing a long-term resident.

</comment><comment><USER3> Seems like the market exists for what they offer. Even if this wipes out airbnb in the short term another company will serve the need in the long term, baring new laws. Basically you'd need to see hospitality industry lobbyists get some new laws passed murdering them as part of some sort of relief package.

<comment><USER4> I'm not a huge Airbnb fan but the hospitality lobbies are pretty crappy too. In the town I'm from they managed to make sleeping in your car a pretty serious crime.

<comment><USER5> Where do you live?

</comment></comment></comment><comment><USER6> I think a lot of these answers are missing the point. I agree, AirBnB won't die, and they'll be able to grow back into a solid business when this all over.

However, AirBnB's original plan was to explode into cities before governments had a chance to react, and that once governments reacted they would have an entrenched, powerful constituency (landlords) who would help fight for them at the local level.

That advantage is now gone. All cities now have a strong opinion over whether they think AirBnB is a good thing, so as this pandemic nears completion there will be plenty of cities who will outright ban AirBnB, and any disruption that may have previously been caused by this action before coronavirus is now a moot point.

</comment><comment><USER7> We operate 2 units out of our home. They were converted from rentals. They were REALLY crappy rentals though and essentially illegal to rent out anymore - lacking access to laundry facilities, kitchens, etc. But they are comfortable and spacious and in a nice part of town, so they have made excellent Airbnbs.

Housing shortages in our area are a huge problem - any apartment complex proposal dies in city hall, so they are essentially banned. The only source of new units are hotels. Our units are slightly more expensive than renting, but still an amazing deal over an equivalent hotel. And a quarter of the cost goes to local taxes (we're taxed at a higher rate than the hotels, btw).

Coronavirus has dropped Airbnb rates across the board - but occupancy has been about the same (market pricing in action). We have noticed a ton more interest in long term rentals (a. because it's so cheap, and b. a lot of people have bizarre living situations right now), so if anything income is a lot more consistent right now.

Airbnb's cut isn't that affected. It's still bizarre how much they make off of a unit considering how little they provide. Their insurance never pays out - their website and app are embarrassingly bad.

<comment><USER8> >It's still bizarre how much they make off of a unit considering how little they provide. Their insurance never pays out - their website and app are embarrassingly bad.

Then stop using them. There are plenty of other options.

</comment></comment><comment><USER9> I live in touristy city, and I wish nothing more than to see Airbnb crash and die.

Finding rent here is mission impossible, most landlords will happily rent to you for a contract that ends at the start of the summer, then you have to figure out where to live for 3 months.

Housing prices are impossibly expensive compared to local salaries, and landlords would rather keep a place empty for an occasional airbnb than have a full-time tenant (that has a lot of legal protection regarding eviction).

My prediction is that this summer season is dead, and that many places will go back to regular renting, I hope they never go back to Airbnb again.

<comment><USER10> I agree, AirBnB is an unsustainable business and I would also like to see it regulated out of existence. It is extremely classist. Only something that middle class or higher can use while reducing housing availability which primarily impacts lower classes.

<comment><USER11> I don't get that argument. Going by your logic, housing itself is classist because people who aren't at least in the middle class can't afford houses much of the time. And maybe it is, but then what? Are we supposed to abolish classism because some people are less fortunate?

<comment><USER12> I can give you an example. A cheap-to-rent apartment in a central part of an old popular city in Europe, is now a pricy Airbnb.

This means that students, young families, people with lower income have to move out of a suburb they we born, studied, have friends, etc. And now have to find a place elsewhere on the outskirts, where tourists don't want to go.

This is apart from arriving at your buildings front door and having some stranger stand behind you while you turn the key.. a very irritating situation.

<comment><USER13> Airbnb makes the problem 10-20% worse, but almost no cities are building net positive housing compared to their growth. People getting priced out will continue to happen with or without Airbnb, until cities take housing seriously and build more.

</comment></comment></comment></comment></comment><comment><USER14> I hope not and if it does, I hope Kamernet goes down with it. Your company is taxing students for essentially nothing but an introduction. And it has been doing that for decades. Not that I would normally mind your existence, but I do now I hear what you are hoping and likely lobbying for.

</comment><comment><USER15> I think you can make a reasonable case that, if we have a recession, it will be OK for Airbnb. Maybe even good for them.

During a recession, people look for ways to economize, and one way is to downgrade housing. For example, people who did live alone will get a roommate, people will move to a smaller place, and some younger people will move back in with their parents.

If this does happen, then occupancy rates (for normal leases, not short-term rentals) will drop in many places, making landlords more interested in alternative ways to fill empty units. That could work in Airbnb's favor.

In a recession, people would also have less disposable income for travel. That will hurt Airbnb but it could also help them because travelers could prefer it as a cheaper alternative to a hotel. During recessions, budget-oriented businesses (like discount stores) tend to do better.

</comment><comment><USER16> airbnb has no serious liabilities, in terms of real estate, on their balance sheets.

if they can go cockroach mode, and reduce spending (should be easy with discipline and layoffs), they'll still be a multi billion dollar company in 2021-2022.

and i say this thinking they're ultimately a cancer on society.

<comment><USER17> Contrast this with WeWork, where people have been raising concerns about its business model (short-term revenues and long-term lease liabilities) from its inception.

WeWork is _dead_. The main question now is what specific necromancy the venture capitalists will be performing on its corpse.

<comment><USER18> There's nothing wrong with, or unusual about, the business model. Short-term revenues and long-term liabilities is how every other real estate company operates. It's also how every bank operates.

<comment><USER19> Banks are required to keep 10% of deposits in reserve and pay into a deposit insurance system. The FDIC can shut banks down or put them under control of another in a crisis.

</comment></comment></comment></comment><comment><USER20> Many countries already require you to provide an address when entering (for visa-free visits) or when applying for a visa. This is not a new phenomenon.

We will probably see a cursory medical test at borders. This will become more complex over time as the technology develops.

Cities (and tax-paying hosts) make a ton of tax revenue from AirBnb, much of which wouldn't otherwise exist. I don't expect any total shutdowns.

<comment><USER21> > Cities (and tax-paying hosts) make a ton of tax revenue from AirBnb

Aha, sure. They pay next to nothing in tax in Europe. Some individuals pay more tax than airbnb while making 10 times less money.

[https://translate.google.com/translate?sl=auto&tl=en&u=https...](https://translate.google.com/translate?sl=auto&tl=en&u=https%3A%2F%2Fwww.lavieimmo.com%2Ffiscalite- immobiliere%2Fen-2018-la-filiale-francaise-d-airbnb-n-a-paye-que-148000-euros- d-impot-46430.html)

<comment><USER20> That's why I included _tax-paying hosts_. Presumably individuals pay taxes on their hosting earnings, and individual tax rates are often higher than corporate ones.

</comment></comment></comment><comment><USER22> They're included in the bailout package that just passed [1] so no they're not going anywhere.

1\. [https://www.bloomberg.com/news/articles/2020-03-27/a-guide-t...](https://www.bloomberg.com/news/articles/2020-03-27/a-guide- to-who-s-seeking-stimulus-from-manufacturers-to-casinos?srnd=premium)

<comment><USER23> Only for temporary worker benefits. That's not much for Airbnb like, say Uber.

</comment></comment><comment><USER24> This is pretty absurd as your hypothesis makes no sense. The drive for revenue is going to override any government demand for oversight. Any government stupid enough to put up this would kill tourism which is the lifeblood of many cities. Money speaks and I don't see any government enacting this anywhere irrespective of AirBnb being there or not.

Now for Airbnb I am taking the reverse and contraion position that they will actually come out this ahead of most hospitality companies. Simple they don't own any assets and have the ability to ratchet down or up depending on the macro-environment. Also let's be honest here is that host will come back as its a another way for them to monetize their assets especially the economic situation right now.

</comment><comment><USER25> I'd prefer to see a revival of multi-family homes. It feels like there needs to be a middle ground for people who can afford to buy multiple houses but can't afford to buy apartment complexes.

"Investors" taking away from the single-family market in order to have airbnb- style rentals probably wasn't at the forefront of the founders' minds when they started it but they've done nothing to try to bring attention to it and the impact it is having on people who are ready to make the move from being a renter to being a homeowner.

</comment><comment><USER26> Just sharing my friend experience, she had to end her exchange study early from Europe (due to recent escalation) and back to Taiwan. My friend however, wasn't a Taiwanese and require a place for her 14 days self isolation. She ended up finding an Airbnb willing to host her during the self isolation period (hotel usually have a central ventilation which isn't optimal for self isolation).

</comment><comment><USER27> Nope, their main money drain is people and people that they don't really need at that.

Does it take the thousands of people they have to support a couple of apps and a website + user support? No.

</comment><comment><USER28> You were already given some nice answers. Mind you, in many countries, a huge chunk of AirBnB stays are domestic not international.

</comment><comment><USER29> If quarantine measures are lifted, it means that Corona is out so why would the government want to track tourists more?

</comment><comment><USER30> I don't see why they would since their expenses are essentially marketing and R&D. And they've stopped marketing and instituted a hiring freeze. Perhaps some layoffs might happen but I highly doubt that this is a death sentence for them more than Expedia et. al.

Also: [https://en.m.wikipedia.org/wiki/Betteridge%27s_law_of_headli...](https://en.m.wikipedia.org/wiki/Betteridge%27s_law_of_headlines)

</comment><comment><USER31> No.

</comment><comment><USER32> That s mostly an issue for airports, and health officials, cities cant expect all landlords to test their tenants regularly. Airbnb owns no properties, they ll go in recess and probably scale down but i see no reason it s the "end"

In thr meanwhile, it will be transformed to a platform for normal, long term rents

(If anything, trusted, and possibly provably tested renters from airbnb will be preferred )</comment>


Teeworlds for Mac, Windows, and Linux - <AUTHOR> http://teeworlds.com

<comment><USER2> What I appreciate -- and I realize this is a bit more meta than about the game itself -- is that when it says "for Linux", it really means "for Linux" and not "for some specific versions of Ubuntu and maybe a 32-bit Red Hat thrown in for good measure".

The game is actually in the package manager for my distro, but just for fun I downloaded the binary off the site. I ran it. It worked.

That's an amazing technical achievement that many cross-platform games today (even the commercial ones) have not managed to attain.

Massive props.

<comment><USER3> The thing is, there's really is no such thing as a generic "for Linux". It's not just a matter of packaging systems, although that's a factor too. If it's anything nontrivial, it'll be linked against certain versions of certain libraries, and which libraries and which versions it depends on will prevent it from running (out of the box, at least) on distros which don't have those versions of those libraries.

I didn't look at the binary, but another commenter implied that it achieved this portability via static linking. This does get rid of a lot of the dependency issues that might cause problems, but it's not a solution either. You do not want everything to be statically linked, that would be a nightmare.

<comment><USER4> "You do not want everything to be statically linked, that would be a nightmare."

For a desktop system, you really do. The space and storage drawbacks are history with modern systems; the only remaining issue is that a user has to wait for the developer of their application to release a new version to get security updates, and that's not nearly as much an issue for a desktop system, where a user can just choose not to use software that's not updated promptly.

<comment><USER5> So you don't mind downloading a gigabyte of updated packages every time libc is updated?

</comment></comment></comment></comment><comment><USER6> This was fun! Anyone else feel this is kind of a real-time Worms 2D?

Wonderful to see "Download for Linux" on the frontpage, even better to see it's available in the Arch repos.

Where is the donation button, though?

<comment><USER7> Yeah it does look like RT Worms 2D but I think the real first game of this genre was Liero [http://www.liero.be/](http://www.liero.be/) Pixelated but fast and responsive as console games (ex SNES). I have spent countless hours in the past playing Liero with my brother on the same monitor sharing a keyboard. Fun times :)

<comment><USER8> There's also an open source Liero: [http://www.openlierox.net/](http://www.openlierox.net/)

<comment><USER9> Thanks for mentioning that game! :) (I'm one of the core developers, from our small team of mainly 3 devs, where all of us are currently busy with other things.)

A while ago, I also added support to load TeeWorlds levels. Also, Gusanos level/scripting support was added. (Gusanos was another Liero-clone.)

After all, the concept of TeeWorlds and OpenLieroX aren't too different, except that TW is played with mouse and OLX purely with keyboard. Also, the rope is much longer in OLX and there is destructible terrain.

</comment></comment></comment></comment><comment><USER10> Oooh! Nice to see this on HN! If anyone has played soldat, this is a neat free alternative and one of the more polished opensource games today.

<comment><USER11> I didn't think it was open source though? According to wikipedia it's shareware, with further features opened up upon registration?

Regardless, it is a great game!

<comment><USER12> It doesn't have a nice prominent GitHub link, but source is available:

[https://www.teeworlds.com/?page=docs&wiki=CompilingEverythin...](https://www.teeworlds.com/?page=docs&wiki=CompilingEverything)

<comment><USER13> [https://github.com/teeworlds/teeworlds](https://github.com/teeworlds/teeworlds)

</comment></comment></comment></comment><comment><USER14> Hey look, its not even in the AUR, its in the official Arch repos: [https://www.archlinux.org/packages/community/x86_64/teeworld...](https://www.archlinux.org/packages/community/x86_64/teeworlds/)

</comment><comment><USER15> There should a short demo/how to play when you start. When it starts up, you're on a map with enemies swarming around and all you can figure to do is move the target with the mouse and click to fire. After being stuck in one spot and firing at the walls, you discover a right click sends out a grapple and that seems the only way to move. Arrow keys do nothing, jikl; does nothing, shift brings up a goofy context menu.

Then you make your way into settings and figure out the other buttons. A and D are the default move buttons.

Playing this on a laptop with a trackpad was an exercise in frustration. Once I eventually figured out where the controls were, I remapped movements and firing to keyboard, but it seems you can't aim without a mouse. You find yourself walking backwards and pointing your gun in the opposite direction.

At least now that I tried playing with the laptop, once I get home and have a computer with a trackball, it might work out better.

<comment><USER16> There are a lot of game types, but the easiest is probably DM (death match). That is what I played when I first started. CTF (capture the flag) is also kind of easy for beginners. If you are just starting out, pick a server with low ping, and at least 4 players.

An important feature is jumping (I forgot the default key for this but I think it's spacebar). Also, when you use the grapple, make sure you don't hook your teammates, because that is annoying as hell.

I can't play for shit with a trackpad but some people can. I just use a USB mouse. Teeworlds is strangely addicting.

</comment></comment><comment><USER17> Here is a similar game: [http://www.hedgewars.org/](http://www.hedgewars.org/)

<comment><USER18> No, that is a clone of Worms. This is a clone of Leiro which seems to also have an open source exact-clone: [http://www.liero.be/](http://www.liero.be/).

The gameplay is totally different.

<comment><USER19> Can't hurt to mention Hedgewars as another really good open source game, though.

</comment></comment></comment><comment><USER20> I remember playing this a long long time ago. Cross-platform is the news? Pretty awesome game though. Movement mechanics is one of the best for 2d multiplayer shooter games.

</comment><comment><USER21> Love the game, but i hate that i can't play with with my laptop, i always need a mouse :(

</comment><comment><USER22> This has become our go-to game for after work gaming/drinking sessions. It's very accessible to download in 5 minutes and start playing right away.

</comment><comment><USER23> Downloads are super slow (THANKS, HN), anyone know if there are any mirrors up?

<comment><USER24> Thanks for the hint. I moved the files to another host, check the site again.

</comment></comment><comment><USER25> I've played this game a few times and it's quite fun.

</comment><comment><USER26> Looks like a mix of Quake and Liero. Sweet.

</comment><comment><USER27> Reminds me of xpilot back in the days.

<comment><USER28> My first thought was 'oh, hey, this looks a lot like xevil'.

</comment></comment><comment><USER29> Upvoted for cross-OS development done right.</comment>


Recent Graduates Are Most Likely to Work in Sales, Making around $40K - <AUTHOR> https://www.bloomberg.com/news/articles/2017-05-18/recent-college-grad-chances-are-you-re-in-sales-making-38-000 <comment><USER2> I'm not sure we should expect anything differently, if recent graduates are less intelligent (as a cohort) than ever. [Difficult degree] enrollment is _relatively_ flat because aptitude is flat, and grad jobs will reflect this.

I wrote a little about this framing it as a CS degree problem, but it seems true for a lot more than just CS.

> Can we prove aptitude is flat? Kinda. In 1970s 1-in-2 college grads aced > Wordsum test. Today 1-in-6 do.[2] Using that as a proxy for IQ of the median > college grad, in the 70's it was ~112, now its ~100.

> In other words we have more people going to college than ever, but the > "average grad" is less intelligent than ever. Degrees are increasingly > diluted yet expensive. You can pay more money than ever to show that you are > of average intelligence.

From: [https://email@example.com/why-is-computer-science- enr...](https://firstname.lastname@example.com/why-is-computer-science-enrollment- so-low-dea064c2f7f0)

<comment><USER3> Wait, that's an amazing claim. 100 is the median IQ for the entire population. So the claim is that the median college graduate has the same IQ as the median person. How could that possibly be true?

<comment><USER4> In the 70s 10% of people completed a 4 year degree and now it's 35%. So the increased availability of a college education has dragged the meadian of the cohort closer to the average IQ of everyone.

</comment></comment></comment><comment><USER5> Good salesmen in high-commission industries like software, pharma, high-end real estate, etc. will make _much_ more than a good engineer will over their career. I had a buddy in sales who closed an enterprise software deal and made $80k from that alone. He had a lot of deals cooking.

<comment><USER6> I'm curious about this. What does it take to make a "good" salesperson by this definition? Just grit and experience, or some innate and uncommon skill? I know there are people who make millions working in sales, but I guess I'm just wondering how common that actually is. Should a reasonably motivated and intelligent salesperson early in their career expect to be making $200k+ a few years in, or does that take a very unusual level of luck/skill/dedication to turn it into a lucrative career?

<comment><USER7> Every great salesperson I know is fearless in any social situation. They can strike up a conversation with anyone, anywhere, anytime - effortlessly. You can't teach that.

There are a host of other qualities, but this strikes me the most "inborn" one.

<comment><USER8> You can teach that, or at least learn it, with cognitive behavioural therapy for social anxiety and practice in progressively more difficult situations.

<comment><USER9> I think there are limits. I compare it to athletics. With hard work I can double my bench press but there are people who can bench even more without ever training. If these people work hard in addition they can perform on a level that's not achievable for most of us.

I think it's the same for sales or a lot of other professions. People with talent can go much further.

<comment><USER10> I think this is true too, just that with sales unlike athletics, the field is more inclusive (e.g. specialized knowledge in the product field may be more important than absolute speech skills), and also higher populated leading to there being more positions for people who are merely above average, rather than superhuman.

</comment></comment></comment></comment></comment></comment><comment><USER11> This is why we've probably passed "peak school". For many new graduates, ROI for college is negative. About half of new college graduates end up working in a job that doesn't require a college education.

(It's even worse in some third world countries on the way down. In Egypt, unemployment of college graduates is higher than for non-college graduates.)

<comment><USER12> > In Egypt, unemployment of college graduates is higher than for non-college > graduates.

If pay is also higher then college could still be +EV.

<comment><USER13> Thats not how EV works. It all depends what the increase in pay and unemployment are.

<comment><USER14> Which is exactly what the comment you are replying to said.

</comment></comment></comment></comment><comment><USER15> Is it just me or does it seem like $40k has been the default for far too long. I believe (anecdotally) that it's been the average white-collar entry-level salary since the late 90s/early 2000's.

Seems that the number isn't adjusted for inflation and should be closer to $45 or $50k in 2017+

<comment><USER16> You also need to include other benefits as well. Benefits as a percent of total compensation have increased heavily over the past 20-30 years. Now they make up ~30% of an employees total compensation.

[https://fred.stlouisfed.org/series/COMPRNFB](https://fred.stlouisfed.org/series/COMPRNFB)

<comment><USER17> > have increased heavily

for the 1%.

</comment></comment></comment><comment><USER18> I feel like an apt title for a book about late-stage capitalism would be "A Society of Salespeople".

With that said, I'm not exactly sure what type of career path somebody studying, say, political science could embark on -- it seems to me that there's a lot more demand for accreditation in certain fields than there is demand for actual practitioners.

<comment><USER11> Napoleon once referred to England as an "island of shopkeepers".

Computers are getting better at sales. Amazon doesn't have salespeople. Retailers barely have salespeople any more. Outside of real estate, cars, and financial products, what B2C companies do?

<comment><USER19> > Amazon doesn't have salespeople.

AWS sure as hell does

</comment></comment></comment><comment><USER20> It's crazy how accurate that is. I'm lucky enough to be working as a data scientist, but almost all of my friends are either working in sales or in grad school.

<comment><USER21> What is your degree in and what are their degrees in?

</comment></comment><comment><USER22> Interesting anecdote, but it's obviously skewed. For example: attorneys, nurses, physicians, and accountants are all missing from the graph. From that I intuit that either a) the data intentionally captures people in only their first job or b) the data is just wildly incomplete.

Conservatively assuming this is intended to be a snapshot of first job salaries, it's interesting to note that a $40k salary is in the top 50% of jobs in the US [1]. And again, we expect most of these people to earn increasingly more as they hit their earning stride (which will be after grad school for many).

1- [https://www.fool.com/retirement/2016/10/30/heres-the- average...](https://www.fool.com/retirement/2016/10/30/heres-the-average- american-household-income-how-do.aspx)

</comment><comment><USER23> > Glassdoor sifted through the resumes for the job titles that appeared most > frequently in the five years following graduation. Median pay was determined > based on salary information self-reported to the site from May 2015 to this > month.

I'm not sure if this is a good way to quantify it. It was always common for people to get low end jobs after graduation. It's not the jobs they've done in the last 5 years that are of interest, it's the ones they hold after 5 years.</comment>


Boeing's 737 Max Software Outsourced to $9-an-Hour Engineers - <AUTHOR> https://finance.yahoo.com/news/boeings-737-max-software-outsourced-204657048.html <comment><USER2> [https://news.ycombinator.com/item?id=20309052](https://news.ycombinator.com/item?id=20309052)

</comment><comment><USER3> If $9 per hour is the problem, may be going with $500 per hour lawyers would be better ?

Price is not always a good proxy for quality.

<comment><USER4> It doesn't bode well for Boeing if this is the case though. Many reports show them trying to cut corners. Hiring $9/hour engineers can't be good for them. Not saying these engineers aren't good. But there's a reason they are getting paid that low.

</comment></comment><comment><USER5> Financial management has received a big bonus for optimizing processes and saving budget.

</comment><comment><USER6> Next thing we'll learn is that the entertainment system is actually just a WordPress theme.</comment>


Better Local Journalism, by Local Reporters, Is the Goal of a New Database - <AUTHOR> https://www.nytimes.com/2018/11/18/business/media/shoeleather-local-reporting.html <comment><USER2> > communities across the country have complained that journalists who come > into their towns and cities too often produce shallow or misrepresentative > reporting. <p> Local journalists who know their hometowns could report the > same stories more accurately and with more depth, they say.

"[C]ommunities have complained that journalists [...] produce shallow or misrepresentative reporting." That should sound familiar here. Communities which include science, and tech, and aerospace, and medicine, and economics, and military, and ... so many other communities.

Journalists embedded in those communities often get things right. Journalists which aren't, often don't.

The current issue of CJR [https://www.cjr.org/tag/fall-2018](https://www.cjr.org/tag/fall-2018) is subtitled "The stories left untold in America's newsrooms". It's focused on race, with some class and ethnicity, but one article describes the corps remaining oblivious overseas, even in a country (Korea) that still has foreign desks.

Even the best of mainstream journalism's coverage of science and engineering feels like overseas coverage after foreign desks have closed. Missing sanity check, ground truth, nuance, insight, the point, and the real story.

So if the [https://shoeleather.us/](https://shoeleather.us/) approach succeeds in disrupting newsroom coverage of small geographic communities, the potential impact seems much broader.</comment>


Ask HN: How do you drive traffic to a website? - <AUTHOR> <comment><USER2> One obvious way to is mention the name of the website on here.

</comment><comment><USER3> "Show HN: "

</comment><comment><USER4> What type of website?</comment>


Qgrep Internals - <AUTHOR> https://zeux.io/2019/04/20/qgrep-internals/ <comment><USER2> Along these lines, it would be interesting to see a code search that can optionally use the native OS full text search to accelerate queries. Having to keep an index up to date for a search tool specifically is a pain. But Windows comes with the Windows Search API, macOS has NSMetadataQuery, and Linux has a variety of tools like Recoll that might be available depending on the system. Since in many cases the OS maintains a full text search database anyway, a grep tool might as well make use of it where available.

<comment><USER3> If I were going to build a full text search tool that was primarily used for code, I doubt the OS native search indices could be used. For searching code, you likely want a very different tokenizer and code-aware searches than what a typical document indexer would use. I've often thought about leveraging the enormous set of syntax highlighting definitions for languages out there as a base to build a tokenizer off of that has some smarts about the things it indexes. But it's a half-baked thought.

But I agree. A prerequisite to any tool like this really need to be very good at keeping the index up to date with minimal user fuss and needs to be reliable. That's a hard engineering task.

<comment><USER2> What I was thinking was to use the OS native search as a way to quickly find a candidate set of files, and then to manually winnow down from there. The indexer would only help for a subset of queries: there are many queries it wouldn't help with at all. But it could help for many common ones. I suppose it depends on how the OS full text search is implemented: if it has hardwired NLP stuff in it, for example, it might not be useful at all.

</comment></comment></comment><comment><USER4> I very rarely need to search my code base for arbitrary strings. I use more advanced tools to find code. For example, Resharper indexes all the names and provides me with a great user interface to find them. Let's say I need to find class named MyWonderfulFactoryManagerAdapterSingleton I type Ctrl+T and merely type famaadsi (first letters of the camel case words) to find it.

<comment><USER5> I used to use "smart" tools like that, but I've more and more gone back to the "dumber" grep tools. It turns out, they're usually faster, they're almost exactly as reliable, and they're way more flexible. I'll stick with ripgrep.

</comment></comment><comment><USER6> qgrep maintains some metadata ("compressed representation of the entire searchable codebase") and ripgrep does not (as far as I know). It does't appear to be benchmarking the same thing, unless I am missing something.

Besides this, I did learn a trick or two from the blog.

</comment><comment><USER7> I've (unfortunately?) never need to make code this fast, but it sounds like a lot of fun. Seems a little unnecessary (Intellij with Scala can find usages/implementations pretty quickly for even large codebases), but I appreciate the engineering and dedication that went into this. Moreover, I haven't worked on very _very_ large bases (> 5m lines) and never with VS, so I believe it was a real problem that needed to be solved.

Do other search tools like ag or ripgrep also maintain a cache? A lot of the optimizations he described could be done on none-cached data and I am curious to see how important the I/O and cache size bottleneck are.

<comment><USER8> Ag and ripgrep do not maintain their own cache. Usually the OS file cache does a decent job of keeping things fast.

</comment></comment><comment><USER9> Not sure its a fair comparison. I mean in his comparison qgrep finds a match at line 44478 where ripgrep says its line 53924.

Then there's the obvious left-out of time it takes for qgrep to populate its cache.

Seems like an apples and oranges comparison to me.

<comment><USER3> On my system, the line number reported by qgrep is correct and matches ripgrep. I don't know why the article's example is off, but I'd probably assume it was a copy & paste error.

> Seems like an apples and oranges comparison to me.

This kind of misses the point. The OP is perfectly up front about this. It's not an apples to apples comparison in the sense that the tools are doing roughly similar algorithmic work internally, but it is a decent apples to apples comparison in terms of the _user experience_. That is, searches are much faster when you have a pre-computed index.

With that said, getting the user experience around keeping the index up to date is definitely a key component of this, and the article doesn't really explore that aspect. But I don't think index creation/update time should be included search benchmarks, since the whole point of a tool like this is that creating or updating the index should be a relatively cheap and infrequent thing compared to the searches executed against the index.

</comment></comment><comment><USER10> Holy moly qgrep is awesome! How have I never heard of it before?!

Thanks for sharing this link!

</comment><comment><USER11> Besides google's RE2 and writing properly parallelized and cached code, this article highlights the most important thing which we are in the process of losing at the moment.

Testing your code on low cpu clock and disks with spinning parts. I'm pretty sure if we had this hardware in the 60s, computer science would have halted because people would have thought "oh why bother reducing this algorithm to nlogn where n^2 is computable in a perfectly reasonable time frame for the use cases we have?"

</comment><comment><USER12> Reminds me of my first job out of college. It was a very large insurance application written in VB.NET. It was a terrible application. And Visual Studio's search functionality left much to be desired at the time. I ended up purchasing Copernic Desktop Search, which is an indexed file search tool. It's obviously not built for this kind of use case, but it sped up my workflow enormously.

Nowadays, I can get by just fine with the search functionality in VSCode. (And I don't write VB.NET anymore.)</comment>